当前位置: 首页 > 知识库问答 >
问题:

包含到JSON数组PostgreSQL

陈琪
2023-03-14

我试图在放置在PostgreSQL数据库中的JSON数组中找到特定值。我搜索了一些解决方案(在搜索smth时访问了所有链接,如“在json数组postgresql中查找值”),并尝试了它们,但没有成功,下面是我的最后一个工作示例:

SELECT json_column
FROM table t,
     LATERAL (
         SELECT array_agg(json::text::integer) arr
         FROM json_array_elements(t.json_column -> 'ids') json
         ) subquery;

这个解决方案只是打印出我的JSON列。我理解json_array_elementsarray_agg的工作流程,但是LATERAL对我来说很神奇。也许是原因?

我拥有的JSON结构:

[
  {
    "ids": [
      12312,
      123123,
      124124,
      124124124,
      12,
      12234
    ]
  }
]

因此,我需要了解如何提取值并找到我需要的值。提前谢谢你的帮助!

共有1个答案

韩峰
2023-03-14
  • 使用json\u array\u元素解包json数组
select t.* from my_table t
cross join json_array_elements(json_column->'ids') as j(id)
where j.id::text = '12312';
 类似资料:
  • 我希望在每个数组中获取多个对象,但我的代码显示了单个对象的操作。下面是我的PHP代码,我如何添加另一个循环来获取多个对象 这是显示单个物体的结果

  • 问题内容: 我使用 PostgreSQL 9.5 和Rails5。我想查询下面显示的包含JSON对象数组的列,以返回包含并执行计数的所有JSON数组元素。我使用 的 SQL 显示在json数据下方。运行查询只会返回一个空数组。 这是我的数据: 我想要其中一个sql查询返回: 和另一个查询以返回数组,以便我可以在应用程序中对其调用count,还可以遍历它以创建表单: 我试过这个SQL查询: 我也试过

  • 我使用PostgreSQL 9.5和Rails 5。我想查询下面显示的包含JSON对象数组的jsonb列,以返回包含的所有JSON数组元素,并执行计数 我使用的SQL显示在json数据下面。运行查询只返回一个空数组。 我尝试了这里和这里建议的查询。 这就是我的jsonb数据的样子: 我希望其中一个sql查询返回: 和另一个返回数组的查询,以便我可以在我的应用程序中调用count并循环使用它来创建表

  • 我有以下几门课: 我将序列化为json格式。对于json序列化,我使用Jackson。 现在,如果、和、分别为空,我想不要将和包含到json中。 正如我所强调的,我应该编写cistom串行化程序,但我不明白是为哪个实体编写的。还是?怎么做的? 附注。 本主题说明如何忽略容器中的空值。我的问题是如何忽略容器中只有空值的对象

  • 问题内容: 我有一张桌子来存储有关我的兔子的信息。看起来像这样: 我该如何找到喜欢胡萝卜的兔子?我想出了这个: 我不喜欢那个查询。一团糟。 作为专职兔子管理员,我没有时间更改数据库架构。我只想适当地喂兔子。有没有更可读的方法来执行该查询? 问题答案: 从PostgreSQL 9.4开始,您可以使用operator: 如果改用 jsonb 类型,甚至可以在键上为查询建立索引: __ 当然,作为专职兔

  • 问题内容: Postgres具有此JSON数据类型,我想知道如何查询JSON数组中的数据?我正在使用Postgres 9.3.1 我已插入具有以下两个字段名称的PUBLISHER表:字符串和数据:json 我想查询并列出类型为“小说”的作者。在这种情况下,应该是“ James”和“ Tom”作为输出。 这种查询的内容: 问题答案: 您可以使用该函数从数组生成: 有了它,您可以将其用作子查询,这样就