首页
返回
创建于
状态
公开

在 PostgreSQL 中,如果你有一个字段是 JSON 或 JSONB 类型的数组,想要查询这个数组中第一个元素的 id 字段,可以使用 JSON 操作符来提取数据。

假设你的表叫 my_table,字段名叫 data,其内容类似于:

json

查询 JSON 数组第一个元素的 id

如果 data 是 JSON 类型:

sql

如果 data 是 JSONB 类型(推荐):

sql

说明:

  • -> 表示取出 JSON 对象或数组元素(返回 JSON 类型)。
  • ->> 表示取出 JSON 字段对应的文本值(返回文本类型)。
  • data->0 表示取出数组的第一个元素(索引从 0 开始)。
  • ->>'id' 表示从这个 JSON 对象中取出 id 的值(作为文本)。
  • ::int 表示强制转换为整数类型(可选,视你需要而定)。

进阶:带条件查询第一个元素的 id(例如只查某些行)

sql