pgsql的jsonb相关处理及样例

目录

1、某个字段中包含目标list中的全部使用@>:

2、某个字段中包含目标list中任意值使用?|:

3、其他操作样例:


1、某个字段中包含目标list中的全部使用@>:

SELECT * FROM "public"."t_a" WHERE a::jsonb @> '["cc", "dd"]' limit 10;

2、某个字段中包含目标list中任意值使用?|:

SELECT count(1) FROM "public"."t_a" WHERE a::jsonb ?| array['cc','dd'] LIMIT 10;

3、其他操作样例:

PostgreSQL 中的 JSONB 数据类型提供了丰富的操作符,用于执行各种操作。以下是一些常用的 JSONB 操作符及其解释和样例:

  1. ->:用于获取 JSONB 对象的子对象或数组的元素。

    • 示例:jsonb_column->'key'
  2. ->>:用于将 JSONB 对象的子对象或数组的元素转换为文本。

    • 示例:jsonb_column->>'key'
  3. #>:用于获取 JSONB 对象的多层嵌套子对象。

    • 示例:jsonb_column#>'{key1, key2}'
  4. #>>:用于获取 JSONB 对象的多层嵌套子对象的值,并将其转换为文本。

    • 示例:jsonb_column#>>'{key1, key2}'
  5. @>:用于检查是否包含指定的 JSONB 对象或数组。

    • 示例:jsonb_column @> '{"key": "value"}'
  6. <@:用于检查是否被指定的 JSONB 对象或数组包含。

    • 示例:jsonb_column <@ '{"key": "value"}'
  7. ?:用于检查是否存在指定的 JSONB 键。

    • 示例:jsonb_column ? 'key'
  8. ?|:用于检查是否存在指定的 JSONB 键中的任意一个。

    • 示例:jsonb_column ?| array['key1', 'key2']
  9. ?&:用于检查是否存在指定的 JSONB 键中的所有键。

    • 示例:jsonb_column ?& array['key1', 'key2']
  10. ||:用于连接两个 JSONB 数组。

    • 示例:jsonb_array1 || jsonb_array2

以上只是一些基本的 JSONB 操作符,实际上还有很多其他操作符和函数可用。你可以参考 PostgreSQL 文档中的 JSON 函数和操作符部分以获取更多详细信息:PostgreSQL: Documentation: 13: Chapter 9. Functions and Operators

相关推荐
松树戈40 分钟前
PostgreSQL 分区表——范围分区SQL实践
数据库·sql·postgresql
博睿谷IT99_3 小时前
PostgreSQL性能优化实用技巧‌
数据库·postgresql·性能优化
MarsBighead7 小时前
Pgvector+R2R搭建RAG知识库
python·ai·postgresql·rag·pgvector
一个小坑货7 小时前
Docker 部署 PostgreSQL 数据库
数据库·docker·postgresql
老苏畅谈运维11 小时前
PostgreSQL的dblink扩展模块使用方法
数据库·postgresql
W_kiven13 小时前
Centos安装Dockers+Postgresql13+Postgis3.1
linux·运维·docker·postgresql·centos
文牧之3 天前
PostgreSQL 用户资源管理
运维·数据库·postgresql
小陆同学5744 天前
一次性执行多个.sql文件(PostgreSql)
数据库·postgresql
萌萌哒草头将军4 天前
注意!⚠️ 🔥 🚧 PostgreSQL 存在安全漏洞,请及时更新版本或者停用删除相关服务,防止中招!🚀🚀🚀
服务器·postgresql·xss
松树戈4 天前
Ubuntu开启自启动PostgreSQL读取HDD失败处理思路
linux·ubuntu·postgresql