BigQueryで今日の日付を取得するときはCURRENT_DATE関数を使います。
時間に関わる関数を使うときはタイムゾーンを気にして使いたいですね。
今回はCURRENT_DATE関数の使い方について紹介します。
CURRENT_DATE関数の使い方
CURRENT_DATE関数はこのように書きます。
CURRENT_DATE('タイムゾーン')
タイムゾーンを記入しない場合は基本的にUTC時間で表示されるようになっています。
![](https://tellingbook.com/wp-content/uploads/2023/07/image-46.png)
DATE型のときは時間や分が表示されないため、この日付がUTCなのか日本時間なのか区別がつきません。CURRENT_DATE関数を使うときはタイムゾーンの設定は忘れないようにしましょう!
![](https://tellingbook.com/wp-content/uploads/2023/07/image-47.png)
タイムゾーンの設定
カッコの中にSTRING型でタイムゾーンを入れましょう。
タイムゾーンはこちらをご確認ください。
タイムゾーンによる日付の変化を確認したいので、日本よりさらに3時間の時差があるニュージーランドを設定しました。
現在の作業時間が「2023年07月24日 22時35分」のため、ニュージーランドのタイムゾーンにすると今日の日付は「2023年07月25日」になるはずです。
![](https://tellingbook.com/wp-content/uploads/2023/07/スクリーンショット-2023-07-24-22.35.01-1024x264.png)
SELECT
CURRENT_DATE('Pacific/Auckland') AS `今日の日付`
今日の日付が「2023年07月25日」になっていますね。
ちゃんとタイムゾーンが機能しているようです。
まとめ
- CURRENT_DATE関数を使うときは必ずタイムゾーンを設定する
- タイムゾーンを設定しない場合はUTC時間で表示される
CURRENT_DATE関数を使うときはこのポイントに気をつけて使いましょう!