我在C#中基于传入的参数动态构建一个查询。它基于我传递的内容正确构建查询,但我无法弄清楚为什么查询一直抛出Unexpected SELECT
错误。该错误指的是该查询中的最后一个选择,紧跟在组和顺序之后。SQL意外的选择
这里是我的程序输出查询:
with allTables as (
SELECT
UNIX_SECONDS(TIMESTAMP(DATE)) as date,
SUM(CASE WHEN period = 7 THEN users END) AS days_07
FROM (
SELECT
activity.date AS DATE,
periods.period AS period,
COUNT(DISTINCT user) AS users
FROM (
SELECT
activity.date AS DATE,
periods.period AS period,
COUNT(DISTINCT user) AS users
FROM (
SELECT
DISTINCT DATE(TIMESTAMP_MICROS(event.timestamp_micros)) AS DATE,
user_dim.app_info.app_instance_id AS user
FROM `hidden.*`
CROSS JOIN
UNNEST(event_dim) AS event
) AS activity
CROSS JOIN (
SELECT
DATE(TIMESTAMP_MICROS(event.timestamp_micros)) AS DATE
FROM `hidden.*`
CROSS JOIN
UNNEST(event_dim) AS event
GROUP BY event.timestamp_micros
) AS dates
CROSS JOIN (
SELECT period FROM (SELECT 7 AS period)
) AS periods
WHERE
dates.date >= activity.date
AND
SAFE_CAST(FLOOR(DATE_DIFF(dates.date, activity.date, DAY)/periods.period) AS INT64) = 0
GROUP BY 1,2
) GROUP BY DATE ORDER BY DATE
) SELECT 'all apps' as target, date as datapoint_time, days_07 as datapoint_value FROM allTables
可你为什么不只是粘贴查询到Web UI,让BigQuery的查询语法吗? –