提问人:foxhoundllc 提问时间:11/11/2023 更新时间:11/11/2023 访问量:29
BigQuery 计划查询 - 没有更新行?
BigQuery Scheduled Query - No Rows Updating?
问:
我通过调用存储函数计划每小时进行一次查询。我基本上会获取一小时的关键 Google Analytics 指标,并将它们插入到一个单独的表格中,该表格汇总了这些数据,并且可以提取报告。
函数如下:
"BEGIN
-- Define variables to construct the dynamic table name
DECLARE tblName STRING;
SET tblName = CONCAT('`myga-project.mytable.events_intraday_', FORMAT_DATE('%Y%m%d', CURRENT_DATE('America/New_York')), '`');
-- Dynamic query execution
EXECUTE IMMEDIATE FORMAT("""
INSERT INTO newdataset.newtable
(event_date, event_hour, medium, total_sessions, total_conversions, total_purchase_revenue)
SELECT
event_date,
event_hour,
medium,
SUM(sessions) AS total_sessions,
SUM(conversions) AS total_conversions,
SUM(purchase_revenue) AS total_purchase_revenue
FROM (
SELECT
DATE(TIMESTAMP_MICROS(event_timestamp)) AS event_date,
EXTRACT(HOUR FROM TIMESTAMP_MICROS(event_timestamp) AT TIME ZONE 'America/New_York') AS event_hour,
traffic_source.medium AS medium,
COUNT(user_id) AS sessions,
SUM(CASE WHEN event_name = 'purchase' THEN 1 ELSE 0 END) AS conversions,
SUM(CASE WHEN event_name = 'purchase' THEN ecommerce.purchase_revenue_in_usd ELSE 0 END) AS purchase_revenue
FROM %s
WHERE DATE(TIMESTAMP_MICROS(event_timestamp)) = CURRENT_DATE('America/New_York')
AND EXTRACT(HOUR FROM TIMESTAMP_MICROS(event_timestamp) AT TIME ZONE 'America/New_York') = EXTRACT(HOUR FROM CURRENT_TIMESTAMP())
GROUP BY event_date, event_hour, medium
)
GROUP BY event_date, event_hour, medium
ORDER BY event_date, event_hour, medium;
""", tblName);
END"
返回:已执行。 结果:添加了 0 行。
查询有效,但无法插入格式化的行。我尝试了一些变体,但仍然遇到问题。
我做了一个函数,因为它不允许我调度脚本。存储函数是执行此操作的最佳方法。此存储函数仍未插入应为事件日期、媒介等的行。
答: 暂无答案
上一个:创建总和为 12 的数字组
下一个:根据条件从表中获取 id
评论
SELECT dml_statistics, start_time, end_time FROM
.
.INFORMATION_SCHEMA.JOBS_BY_PROJECT WHERE statement_type = 'INSERT' order by start_time desc