実現したいこと
bigquery での日付のさの出力
前提
以下のsqlの内容で日付の差分を出力したいと思いdate_diff関数とtimestamp関数で出力しました。
引数をdateにした日の差分の出力で出力結果が異なるレコードがいくつかありました。
sql
1with tmp_log as( 2select 3-- checkin_date, 4-- checkin_time, 5reserve_datetime as reserve_datetime, 6-- スペース必須 7timestamp(checkin_date ||' '||checkin_time) as checkin_datetime 8from 9`strategic-hull-361107.maesyori_taizen.reserve` 10) 11select 12-- データ型がtimestampなので差分はtimestamp_diffを利用する→year ,month 13tmp_log.reserve_datetime, 14tmp_log.checkin_datetime, 15date_diff(date(tmp_log.checkin_datetime),date(tmp_log.reserve_datetime),year) as diff_year, 16date_diff(date(tmp_log.checkin_datetime),date(tmp_log.reserve_datetime),month) as diff_month, 17date_diff(date(tmp_log.checkin_datetime),date(tmp_log.reserve_datetime),day) as diff_date_day, 18 19timestamp_diff(checkin_datetime,reserve_datetime,day) as diff_day, 20timestamp_diff(checkin_datetime,reserve_datetime,hour) as diff_hour, 21timestamp_diff(checkin_datetime,reserve_datetime,second) as diff_second 22from 23tmp_log
なぜ違った値になるのか理解できていない状況です
date_diff関数とtime_stampで計算方法違うのでしょうか?
わかる方教えていただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。