【发布时间】:2022-01-01 03:51:16
【问题描述】:
我已使用 SyncWith 插件将我的 BigQuery 数据库导入电子表格。在我的列中,我有一个 CSV,我想将这些值放入新行中。
这就是我所拥有的
| model | alarm |
|---|---|
| X | 1,34,60,1000 |
| Y | 2,4,5,900,1000 |
| Z | 1 |
这就是我需要的
| model | alarm |
|---|---|
| X | 1 |
| X | 34 |
| X | 60 |
| X | 1000 |
| Y | 2 |
| Y | 4 |
| Y | 5 |
| Y | 900 |
| Y | 1000 |
| Z | 1 |
我找到了以下示例 here,但不幸的是,它对我不起作用,因为 BigQuery 无法识别“CROSS APPLY”。以下代码是否有 BigQuery 替代方案。
SELECT A.[id],
Split.a.value('.', 'VARCHAR(100)') AS String
FROM (SELECT [id],
CAST ('<M>' + REPLACE([string], ',', '</M><M>') + '</M>' AS XML) AS String
FROM TableA) AS A CROSS APPLY String.nodes ('/M') AS Split(a);
【问题讨论】:
标签: sql csv google-bigquery