我正在尝试将访问启动时间变量转换为可读日期或最好的时间戳。
。我正在使用标准SQL。
我已经尝试使用sec_to_timestamp,但我相信这仅适用于bq中的传统sql。
Google文档谈论从日期表达式和字符串表达式转换为时间戳,但是访问开始时间是整数。
https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators
我已经查看了以下链接并尝试了此代码,但是我会发现错误"找不到函数:整数"
大查询 - Google Analytics(Google Analytics) - 首次访问和购买之间的时间差异
BQ捕获的有关日期/时代的任何其他建议将得到大量收到。
谢谢
假设您的开始时间相对于Unix时期,则可以使用TIMESTAMP_SECONDS
将其转换为时间戳。例如:
#standardSQL
SELECT
TIMESTAMP_SECONDS(start_time_sec) AS timestamp
FROM (
SELECT 1488303123 AS start_time_sec
);
如果要将时间戳转换为日期,则可以使用可选时区使用EXTRACT
:
#standardSQL
SELECT
EXTRACT(DATE FROM TIMESTAMP_SECONDS(start_time_sec)
AT TIME ZONE 'America/Los_Angeles') AS date
FROM (
SELECT 1488303123 AS start_time_sec
);
我正在biqquery中的ga_realtime_sessions表中寻找最讨厌的访问时间。我解析了时间戳,如下:
SELECT
visitStartTime,
TIMESTAMP_SECONDS(visitStartTime) as starttime_UTC,
DATETIME(TIMESTAMP_SECONDS(visitStartTime), "Europe/Amsterdam") as starttime_LOCAL,
FROM `ga_sessions_*`
ORDER BY visitStartTime desc
LIMIT 30
产生诸如:
的记录Row visitStartTime starttime_UTC starttime_LOCAL
1 1562153975 2019-07-03 11:39:35 UTC 2019-07-03T13:39:35