【发布时间】:2019-07-19 10:59:46
【问题描述】:
谁能告诉我如何将这两个查询合并为一个查询?
我已经尝试过这段代码,但这里的问题是它没有更新 Adserver 表。
with first as (
select *, c_date = Current_date() from FRIDAY.Adserver where C_date IS NULL
),
second as (
select * from FRIDAY.Adserver JOIN FRIDAY.Matching_Table
ON Adserver.Placement_ExtID = Matching_Table.string_field_0
),
Tird As(
Select *, CONCAT(Cast(Date as String),"-",Second.string_field_0) AS New_IDS from Second
) Select * from Tird
首先我需要用当前日期更新 Adserver 表:
问题 1: UPDATE FRIDAY.Adserver SET C_date() = CURRENT_Date() 其中 C_date IS NULL ;
然后我只会选择当前日期的数据:
问题 2:
首先作为( select * from FRIDAY.Adserver where C_date = Current_date() ), 第二个( select * from First JOIN FRIDAY.Matching_Table1 ON First.Placement_ExtID = Matching_Table1.string_field_1 或 First.Placement_ExtID = Matching_Table1.string_field_0 ), 讨厌的( Select *, CONCAT(Cast(Date as String),"-",Second.string_field_0) AS New_IDS from Second ) Select * from Tird
上面的Query 1和Query 2有没有办法结合起来?
【问题讨论】:
-
由于 SQL 标签也在这里,一些 RDMS 像 PostgreSQL 支持
WITH ... AS (UPDATE ... ) SELECT ....不确定 Google BigQuery 是否支持。 -
@Fawad - 您确定您使用的是 BigQuery 吗?请确认
-
@Raymond 和@Mikhail ...这些查询正在运行,我正在使用 BigQuery
标签: sql google-bigquery