【发布时间】:2018-01-09 01:10:46
【问题描述】:
我使用现有的 BigTable 表生成了一个 BigQuery 表,结果是一个多嵌套的数据集,我很难从中查询。这是该 BigQuery 表中的条目的格式,只需执行简单的select * from my_table limit 1:
[
{
"rowkey": "XA_1234_0",
"info": {
"column": [],
"somename": {
"cell": [
{
"timestamp": "1514357827.321",
"value": "1234"
}
]
},
...
}
},
...
]
我需要的是能够从my_table 获取所有条目,例如somename 的value 是X。将有多个行键,其中somename 的value 将是 X,我需要每个行键条目中的所有数据。
或
如果我可以查询其中 rowkey 包含 X,那么要获得“XA_1234_0”、“XA_1234_1”……“XA”和“0”可以改变,但中间数字相同。我试过where rowkey like "$_1234_$",但查询持续了超过一分钟,并且由于某种原因太长了。
我使用的是标准 SQL。
编辑:这是我尝试过的一个查询示例,但它不起作用(错误:Cannot access field value on a value with type ARRAY<STRUCT<timestamp TIMESTAMP, value STRING>>),但最好地描述了我想要实现的目标:
SELECT * FROM `my_dataset.mytable` where info.field_name.cell.value=12345
我想获取field_name 中的value 等于某个值的所有记录。
【问题讨论】:
标签: sql google-bigquery