【发布时间】:2020-05-29 20:25:26
【问题描述】:
我试图弄清楚如何发出一个包含多个查询的请求,以便生成一个包含我所有查询结果的视图。
这里是例子:
WITH Query_1 AS
(
SELECT
dimension1,
dimension2,
dimension3,
dimension4,
dimension5,
CASE WHEN STARTS_WITH (dimension1, "N_") THEN '1' ELSE '0' END AS qadimension1,
CASE WHEN dimension2 IS NOT NULL THEN dimension2 ELSE '0' END AS qadimension2,
CASE WHEN dimension3 IS NOT NULL THEN dimension3 ELSE '0' END AS qadimension3,
CASE WHEN dimension4 IS NOT NULL THEN dimension4 ELSE '0' END AS qadimension4,
FROM `XXXXX.XXXXX.first_view`
WHERE dimension5='2021' AND dimension1 IS NOT NULL),
Query_2 AS (
SELECT
dimension1,
qadimension1,
dimension6,
CASE WHEN qadimension1 = dimension6 THEN '1' ELSE '0' END AS QA_check1,
FROM `XXXXX.XXXXX.first_view` , `XXXXX.XXXXX.second_view`
WHERE qadimension1 != '0'),
Query_3 AS (
SELECT
dimension1,
qadimension2,
dimension7,
CASE WHEN qadimension2 = dimension7 THEN '1' ELSE '0' END AS QA_check2,
FROM `XXXXX.XXXXX.first_view` , `XXXXX.XXXXX.third_view`
WHERE qadimension2 != '0')
SELECT
dimension1,
dimension2,
dimension3,
dimension4,
dimension5,
dimension6,
dimension7,
qadimension1,
qadimension2,
qadimension3,
qadimension4,
QA_check1,
QA_check2,
FROM
Query_1,
Query_2,
Query_3
WHERE FULL JOIN dimension1;
仍然有错误:语法错误:[242:7] 处的意外关键字 FULL
非常感谢您的帮助
【问题讨论】:
-
提供样本数据、期望的结果以及您想要实现的逻辑的解释。
-
嗨,戈登,事实上,当我尝试同时运行 CASE 语句时,我遇到了错误。所以我在多个查询中分开。我正在尝试运行每个查询,我想要的结果是一个视图或表,其中包含我的所有维度(带有 reuslts 的列),使用维度 1 作为键。如果还不清楚,请告诉我。感谢您的帮助 - 大卫
标签: sql google-bigquery with-statement