Sql 选择/查询";变成;JSON数组
我有一个PostgreSQL 9.4.5数据库。有一个表Sql 选择/查询";变成;JSON数组,sql,json,postgresql,squirrel-sql,Sql,Json,Postgresql,Squirrel Sql,我有一个PostgreSQL 9.4.5数据库。有一个表itemtable,其中有一个名为data的JSONB列,其中包含这样的信息集(为了简洁起见,去掉了很多内容): 现在,我想获得这些项目集中所有ids的列表-非正式地说,可以说selectid fromthedata FROM itemtable。我只使用子查询实现了这一点,这显然是次优的: SELECT idlist->>'id' FROM ( SELECT json_array_elements(data::json
itemtable
,其中有一个名为data
的JSONB列,其中包含这样的信息集(为了简洁起见,去掉了很多内容):
现在,我想获得这些项目集中所有id
s的列表-非正式地说,可以说selectid fromthedata FROM itemtable
。我只使用子查询实现了这一点,这显然是次优的:
SELECT idlist->>'id' FROM (
SELECT json_array_elements(data::json->'items') AS idlist FROM itemtable
) AS necessary_subquery_name
我怎样才能做得不那么复杂
请注意,我需要在SquirreSQL中运行此命令,因此需要
::json
强制转换。哦,没关系,我今天一定错过了一杯咖啡。很明显:
SELECT json_array_elements(data::json->'items')->>'id' FROM itemtable
SELECT json_array_elements(data::json->'items')->>'id' FROM itemtable