我正在将值数组存储在bigquery表中。
Table Name : Embedding
Table Schema :
{
{
field_name:"description",
type:"string",
mode:"nullable"
},
{
field_name:"embedding",
type:"float",
mode:"repeated"
}
}
我可以完美地插入数据。在bigquery的webUI中,预览数据也可以正确显示。但是当我查询数据时,得到以下输出
SQL查询-select * from dataset.Embedding;
输出-
[["0.3","hello new york"],["0.5","hello new york"],["0.1","hello new york"],["0.9","hello new york"],["0.3","hello new york"],["0.2","hello new york"],......,["0.8","hello new york"]]
这些值与描述一起重复,而不是像["0.3","0.5","0.1","0.9","0.3",...,"0.8"]
这样的值数组。
我也尝试了unnest
功能。但是没有运气。
如何解决这个问题?
答案 0 :(得分:0)
如果我理解正确,那么我认为array_agg
可能会对您有所帮助。
类似的东西:
SELECT description, ARRAY_AGG(embedding) AS embedding
FROM dataset.Embedding
GROUP BY 1
如果description
不是唯一的,那么您可能想添加一个主键样式列。
答案 1 :(得分:0)
尝试
SELECT em FROM dataset.Embedding AS E cross join E.embedding AS em
此交叉将数组的内容与表连接在一起,因此您可以实际查询它,就像它们是表中的标量值一样。