MENU
「生年月日から本日時点での年齢を算出したい」「入社日から本日時点での在籍年数を算出したい」
MotionBoard上でデータを加工できないのかな…。
そんな疑問、ありませんか。
MotionBoardではカスタム項目を使うことで年月を計算することができます。
当記事ではDataStorageを使用する場合の計算方法をご説明します。
※DataStorageはMotionBoard Cloudのみで提供している機能です。
MotionBoard上にあるデータベースです。
データソースがDataStorageかどうかはこちらで判断できます。
① データソースが「DataStorage」になっている
② カスタム項目の使い方欄に「Dr.SumのSQLを使用して記載します」の記載がある
データソースがDataStorageであることが確認できたら「本日時点での年齢」を算出してみましょう。
設定したい集計表をクリックし、[データソース編集]を開きます。
[追加項目作成]⇒[カスタム項目]の順にクリックします。
[データ型]を[数値]に変更します。
次に[計算式]のボックスに次の計算式を挿入します。(なぜ数値型を選択するかは本文の最後でご説明します)
TRUNC(MONTHS_BETWEEN(SYSDATE,生年月日)/12) |
[生年月日]は[YYYY/MM/DD]の形のデータをご用意ください。
算数と同じように、内側のカッコから計算します。
この計算式を分解して考えてみましょう。
TRUNC(MONTHS_BETWEEN(SYSDATE,生年月日)/12)
MONTHS_BETWEEN(SYSDATE,生年月日) ・・・・・①
↓
①/12 ・・・・・・・・・・・・・・・・・・・・・②
↓
TRUNC(②) ・・・・・・・・・・・・・・・・・・③
MONTHS_BETWEEN(A,B) = A-Bの月数の差
SYSDATE = 現在の日付時刻
まずは2つの月数の差を求めるため、AとBにそれぞれ日付を代入します。
A=2022/06/15
B=1978/05/02
計算式:‘2022/06/15’-‘1978/05/02’=529.419354…
結果は529.419354…か月です。
①の計算後はこのような式になります。
TRUNC(529.419354…/12)
①の結果が月数になっているため、年数に計算しなおします。
計算式:529.419354…/12=44.118279…
結果は44.118279…年です。
②の計算後はこのような式になります↓
TRUNC(44.118279…)
TRUNC = 小数点以下切り捨て
計算式:TRUNC(44.118279…)=44
整数にすることによって表示が整いましたね!
Aさんは本日(2022/06/15)時点で44歳であることが分かりました。
計算式が理解できたら、作成したカスタム項目をドラッグ&ドロップで行項目に配置しOKをクリックします。
人事管理ボードや会員情報管理ボードで活躍すること間違いなし!
「カスタム項目を追加する」でデータ型を数値に変更しました。
日付型や文字型でも正しい結果は得られるのにどうして…?と思われたのではないでしょうか。
理由は作成したカスタム項目を集計項目に配置すると分かります。
数値にしておくと集計方法の選択肢が増え、平均年齢を出したいときに選択するだけで計算できるからです!
MotionBoardのDataStorageで使える関数はマニュアルに記載があります。
参考にしてみてくださいね。
[参考]MotionBoard Cloud マニュアル:データストレージで使用できる関数の種類 |
Related article
Pick up
Ranking
Info