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関数を使うときはこのポイントに気をつけて使いましょう!