【问题标题】:SELECT / Querying "into" JSON arrays选择 / 查询“进入” JSON 数组
【发布时间】:2015-10-27 11:06:27
【问题描述】:

我有一个 PostgreSQL 9.4.5 数据库。有一个表 itemtable 带有一个名为 data 的 JSONB 列,其中包含类似这样的信息集(为简洁起见,删除了很多内容):

{ "items": [
    { "id": 158597 },
    { "id": 156300 },
    (...)
] }

现在,我想获取这些项目集中所有 ids 的列表 - 非正式的说法可能是 SELECT id FROM items FROM data FROM itemtable。我只设法使用子查询来做到这一点,这显然不是最理想的:

SELECT idlist->>'id' FROM ( 
   SELECT json_array_elements(data::json->'items') AS idlist FROM itemtable 
) AS necessary_subquery_name

我怎样才能不那么复杂?

请注意,我需要在 SquirrelSQL 中运行它,所以需要 ::json 演员表。

【问题讨论】:

    标签: sql json postgresql squirrel-sql


    【解决方案1】:

    哦,好吧,没关系,我今天一定错过了一杯咖啡。很明显:

    SELECT json_array_elements(data::json->'items')->>'id' FROM itemtable
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多