【BigQuery】CURRENT_DATE関数の使い方を紹介します

クラウドプラットフォーム

BigQueryで今日の日付を取得するときはCURRENT_DATE関数を使います。
時間に関わる関数を使うときはタイムゾーンを気にして使いたいですね。

今回はCURRENT_DATE関数の使い方について紹介します。

CURRENT_DATE関数の使い方

CURRENT_DATE関数はこのように書きます。

CURRENT_DATE('タイムゾーン')

タイムゾーンを記入しない場合は基本的にUTC時間で表示されるようになっています。

DATE型のときは時間や分が表示されないため、この日付がUTCなのか日本時間なのか区別がつきません。CURRENT_DATE関数を使うときはタイムゾーンの設定は忘れないようにしましょう!

ジョブ情報を見てもタイムゾーンに関する情報は載っていない

タイムゾーンの設定

カッコの中にSTRING型でタイムゾーンを入れましょう。
タイムゾーンはこちらをご確認ください。

【公式】タイムゾーン一覧

タイムゾーンによる日付の変化を確認したいので、日本よりさらに3時間の時差があるニュージーランドを設定しました。

現在の作業時間が「2023年07月24日 22時35分」のため、ニュージーランドのタイムゾーンにすると今日の日付は「2023年07月25日」になるはずです。

クリックして拡大できます
SELECT
  CURRENT_DATE('Pacific/Auckland') AS `今日の日付`

今日の日付が「2023年07月25日」になっていますね。
ちゃんとタイムゾーンが機能しているようです。

まとめ

  • CURRENT_DATE関数を使うときは必ずタイムゾーンを設定する
  • タイムゾーンを設定しない場合はUTC時間で表示される

CURRENT_DATE関数を使うときはこのポイントに気をつけて使いましょう!