Google bigquery 将字符串数组转换为单行值

Google bigquery 将字符串数组转换为单行值,google-bigquery,Google Bigquery,我在大查询表中记录为 名称值 Aashis[“AB”,AC”] Rahul[“AA”,广告“] 这里的“名称和值”列是字符串类型 我希望输出为 名称值 Aashis AB Aashis AC 拉胡尔AA 下面的Rahul AD是针对BigQuery标准SQL的 #standardSQL SELECT name, value FROM `project.dataset.table`, UNNEST(value) value 您可以使用以下问题中的虚拟数据来测试、播放上述内容 #standardS

我在大查询表中记录为
名称值
Aashis[“AB”,AC”]
Rahul[“AA”,广告“]

这里的“名称和值”列是字符串类型

我希望输出为
名称值
Aashis AB
Aashis AC
拉胡尔AA

下面的Rahul AD是针对BigQuery标准SQL的

#standardSQL
SELECT name, value
FROM `project.dataset.table`,
UNNEST(value) value
您可以使用以下问题中的虚拟数据来测试、播放上述内容

#standardSQL
WITH `project.dataset.table` AS (
  SELECT 'Aashis' name, ["AB","AC"] value UNION ALL
  SELECT 'Rahul', ["AA","AD"]
)
SELECT name, value
FROM `project.dataset.table`,
UNNEST(value) value
结果

Row name    value    
1   Aashis  AB   
2   Aashis  AC   
3   Rahul   AA   
4   Rahul   AD     
更新:列值的类型为字符串,Unnest接受数组。如何将此列转换为数组

参见下面的示例

#standardSQL
WITH `project.dataset.table` AS (
  SELECT 'Aashis' name, '["AB","AC"]' value UNION ALL
  SELECT 'Rahul', '["AA","AD"]'
)
SELECT name, value
FROM `project.dataset.table`,
UNNEST(SPLIT(REGEXP_REPLACE(value, r'^\[|]$', ''))) value   
结果

Row name    value    
1   Aashis  "AB"     
2   Aashis  "AC"     
3   Rahul   "AA"     
4   Rahul   "AD"     

谢谢米哈伊尔的回答。这里的列值是字符串类型,Unnest接受数组。如何将此列转换为数组?您在问题中明确指出,您有一个字符串的
数组。看来情况不是这样的!我将更新答案,请参见答案中的更新。希望您能根据自己的具体情况进行调整。如果仍然有问题,请随时发布新问题。同时考虑接受和投票!谢谢你的接受。还考虑是否还投票:O)