当前位置: 首页 > news >正文

PG数据库 jsonb字段 模糊查询

背景:
项目由于多语言的设计,将字段设置成json字段类型,同时存储中文和英文
页面上通过输入框实现模糊的查询
一、表结构:name字段设置jsonb类型
在这里插入图片描述
二、表数据
在这里插入图片描述
3、Mybatis编写sql

 select pp.name ->>'zh-CN' as pmsProductName,pp.name ->>'en' as pmsProductNameEN,ppc.name->>'zh-CN' as pmsProductCategoryName,ppc.name->>'en' as pmsProductCategoryNameEN from pms_product ppwhere 1=1 
<if test="null != param.pmsProductName and '' != param.pmsProductName">and (pp."name" #>>'{zh-CN}' ilike '%'||#{param.pmsProductName}||'%'or pp."name" #>>'{en}' ilike '%'||#{param.pmsProductName}||'%')</if>

4、其中pmsProductName是页面传递的值,zh-CN和en分别表示对应的中英文key
按照对应的value实现模糊查询,特别注意一下sql中jsonb value 模糊查询写法是采用 #>> 的写法不能是正常取值的->>写法,前者可以正常查询出来,后者发现查询不出结果,一定注意!

http://www.lryc.cn/news/478148.html

相关文章:

  • javascript-Web APLs (四)
  • Keras 3 示例:开启深度学习之旅
  • 鸿蒙Next如何接入微信支付
  • nginx(五):关于location匹配规则那些事
  • 【论文阅读】Associative Alignment for Few-shot Image Classification
  • acmessl.cn提供接口API方式申请免费ssl证书
  • DBeaver如何快速格式化sql语句,真简单!
  • OpenCV C++ 计算两幅图像之间的多尺度结构相似性(MSSIM)
  • 代码随想录第二十二天
  • 【k8s】ClusterIP能http访问,但是不能ping 的原因
  • 【力扣打卡系列】单调栈
  • 使用docker安装zlmediakit服务(zlm)
  • SOLID原则-单一职责原则
  • Transformer究竟是什么?预训练又指什么?BERT
  • Jdbc批处理功能和MybatisPlus
  • 对于相对速度的重新理解
  • Scala的属性访问权限(一)默认访问权限
  • 【算法】(Python)贪心算法
  • 条件logistic回归原理及案例分析
  • redis7学习笔记
  • 重学Android:自定义View基础(一)
  • 前端好用的网站分享——CSS(持续更新中)
  • 华为HarmonyOS借助AR引擎帮助应用实现虚拟与现实交互的能力3-获取设备位姿
  • qt QColorDialog详解
  • 【测试小白--如何写好测试用例--测试用例编写的方法+结合常见登录模块为实例--保姆级教学】
  • 真题--数组循环题目
  • 【Linux系列】在Linux下安装微信
  • 还在使用ElementUI不如试一试DaisyUI,DaisyUI: Tailwind CSS 的高效组件库,
  • 高光谱激光雷达遥感团队成员白杰博士获全国激光雷达优博论文奖
  • 24年配置CUDA12.4,Pytorch2.5.1,CUDAnn9.5运行环境