我正在尝试(未成功)将 Google BigQuery 中的字符串列拆分为包含所有单个单词和所有单词对的行(彼此相邻且按顺序排列)。我还需要维护 IndataTable 中单词的 ID 字段。两个记录集都有 2 列。
IndataTable as IDT
ID WordString
1 苹果 香蕉 梨
2 胡萝卜
3 蓝色 红色 绿色 黄色
OutdataTable as ODT
ID WordString
1 苹果
1 香蕉
1 梨
1 苹果 香蕉
1 香蕉 梨
2 胡萝卜
3 蓝色
3 红色
3 绿色
3 黄色
3 蓝色 红色
3 红色 绿色
3 绿色 黄色 (仅对彼此相邻)
这可能在大查询 SQL?
编辑/添加:
这是我迄今为止所拥有的,可将其拆分为单个单词。我真的很难弄清楚如何将其扩展到单词对。我不知道是否可以对此进行修改,或者我完全需要一种新方法。
SELECT ID, split(WordString,' ') as Words
FROM (
select *
from
(select ID, WordString from IndataTable)
)