Google Big Query 标准 SQL,在 SELECT 语句中添加一列

Posted

技术标签:

【中文标题】Google Big Query 标准 SQL,在 SELECT 语句中添加一列【英文标题】:Google Big Query standard SQL, add a column to a SELECT statement 【发布时间】:2018-06-05 01:48:59 【问题描述】:

我有来自 BIg QUERY Google 数据源的以下查询,这些是每天自动更新的实际数字。我想添加一列,其中包含每天的目标数字,这些数字是静态数字。但是我不知道如何输入不在数据库中的数据。谢谢

SELECT DISTINCT user_dim.first_open_timestamp_micros, event.date
FROM `liquidlite-app.com_quoine_quoinex_light_ios.app_events_20*` AS t
CROSS JOIN UNNEST(event_dim) AS ev[![enter image description here][1]][1]ent
WHERE parse_date('%y%m%d', _table_suffix) between
DATE_sub(current_date(), interval 40 day) and
DATE_sub(current_date(), interval 1 day)

UNION ALL 

SELECT DISTINCT user_dim.first_open_timestamp_micros, event.date
FROM `liquidlite-app.com_quoine_quoinex_light_android.app_events_20*` AS t
CROSS JOIN UNNEST(event_dim) AS event
WHERE parse_date('%y%m%d', _table_suffix) between
DATE_sub(current_date(), interval 40 day) and
DATE_sub(current_date(), interval 1 day)

上面的查询给出了前两列,我需要在第三列中添加不在数据库中的数据。

【问题讨论】:

你能给我们展示样本数据吗?当前的输出是什么样的?您希望它是什么样的? 您能否详细说明数据的来源?这样我们可以更好地理解上下文,特别是关于第三列 @Federico Panunzio 第一列也来自 Google Big Query。第三列来自一个 excel 文件。 请问没人知道吗? 【参考方案1】:

您可以将 federated data source 与 BigQuery 结合使用。在这种情况下,由于您将数据保存在 excel 文件中,您可以将其移动到 Google 表格并按照documentation 操作。完成所有设置后,只需添加另一个 UNION 并查询外部数据。

注意这里有一些limitations,所以你必须看看它是否适合你的用例。

【讨论】:

以上是关于Google Big Query 标准 SQL,在 SELECT 语句中添加一列的主要内容,如果未能解决你的问题,请参考以下文章

基于会话的 Google Big Query SQL 聚合数据

如何在 Google Big Query 中正确使用 GROUP BY 命令?

如何在 Big Query 的标准 SQL 中使用通配符为特定分区查询多个表

在具有相同架构的表上使用 UNION ALL 的 Google Big Query 中的 SQL 错误编辑:架构从 String 更改为 INT

如何优化 Google Big Query 计费字节数

在 SQL (Big Query) 中生成序列/范围/数组,其中最小值和最大值取自另一个表