Beast Mode にて今日を指定する関数 [ CURRENT_DATE() など ] のタイムゾーンに関する注意点

Beast Mode にて今日を指定する関数 [ CURRENT_DATE() など ] のタイムゾーンはUTCとなります。

これは管理者設定のカンパニー設定でタイムゾーンをAsia/Tokyoなどに変更しても、UTCのまま変わりません

 

よって、日付の変更は日本時間の午前9時となりますので、Beast ModeのCURRENT_DATE() などの

関数を利用して、当日、前日の計算をしていた場合、午前9時前に見た場合、前日を指定しても、実際は

前々日のデータとなるので、ご注意下さい。

 

厳密に日本時間で日付を変更する場合には、9時間を足して計算する必要があります

■例:CURRENT_TIMESTAMP()に9時間(32400秒)追加する

DATE_FORMAT(ADDTIME(CURRENT_TIMESTAMP(),32400),'%Y-%m-%d')

 

以下に3つのBeast Modeと表示のサンプルを添付します。

・項目名 CURRENT_DATE()  : Beast Mode 内容 CURRENT_DATE()

・項目名 CURRENT_TIMESTAMP()  : Beast Mode 内容 CURRENT_TIMESTAMP()

・項目名 CURRENT_DATE () JST : Beast Mode 内容 DATE_FORMAT(ADDTIME(CURRENT_TIMESTAMP(),32400),'%Y-%m-%d')

 

ScreenShot1.png

※日本時間の2018/10/11 午前 8:04時点の画像です

 

 

Tagged:
6 votes

· Last Updated

Comments

  • このお話は、日付フィルタの「今日」も同様ですか?

    タイムゾーンがUTCの場合、日本時間午前9時までは「今日」のフィルタでは「昨日」を指し、午前9時から本当に「今日」になるという動き。

     

    とすると、タイムゾーンをUTC、DataSet内のデータは日本時間で運用している環境では、午前0時から午前9時でも、またその後24時まで、正しく「今日」を見るためには、どのように対策すればいいですか?(実際は、毎朝9時前に、”昨日の売り上げ”などの確認のため「昨日」をよく使います。)