提问人:maxoriol 提问时间:9/20/2023 更新时间:9/20/2023 访问量:35
如何在BigQuery中将字符串分解为单独的行?[复制]
How to break down a string into separate lines in BigQuery? [duplicate]
问:
我的 BigQuery 表包含一个 String 列:
WITH
food_thoughts AS (
SELECT 1 as id, 'I want a kebab' AS thought UNION ALL
SELECT 2, 'Pizza is delicious' UNION ALL
SELECT 3, 'All you can eat French fries!'
)
SELECT * FROM food_thoughts
编号 | 思想 |
---|---|
1 | 我想要烤肉串 |
2 | 披萨很好吃 |
3 | 所有你可以吃炸薯条! |
我想将每个句子的每个单词隔离到一个专用单元格中,并将其与其他列匹配。如何使用 BigQuery 命令实现此目的?
预期输出为:
编号 | 词 |
---|---|
1 | 我 |
1 | 要 |
1 | 一个 |
1 | 串烧 |
2 | 比萨饼 |
2 | 是 |
2 | ... |
3 | 炸土豆条! |
答:
0赞
maxoriol
9/20/2023
#1
您可以尝试以下 BigQuery 代码:
SELECT food_thoughts.id, word
FROM food_thoughts, unnest(split(thought, ' ')) as word
- 使用函数将 String 拆分为单词数组
split
- 使用运算符(此处的文档)和别名创建一个新表
unnest
FROM
- 请参阅此别名以收集语句中所需的所有信息
SELECT
评论