You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用LIKE运算符在类JSON字符串中筛选eventCode为REFUND的通知

使用LIKE运算符在类JSON字符串中筛选eventCode为REFUND的通知

嘿,我来帮你搞定这个筛选通知的问题!既然你的数据是以类JSON字符串存在数据库里的,要是没法直接用数据库的JSON函数(或者你就想只用LIKE),咱们可以这么操作:

基础LIKE查询语句

假设你的表名叫notifications,存储类JSON内容的列名叫payload,对应的SQL语句如下:

SELECT * FROM notifications WHERE payload LIKE '%\"eventCode\"%:\"%REFUND\"%';

关于这个语句的几点说明:

  • %是SQL里的通配符,能匹配任意长度的字符(包括空字符),用来忽略JSON字符串里其他无关的内容
  • \"是对双引号的转义,确保咱们能精准匹配JSON结构里键和值的引号部分
  • 这种写法能适配JSON格式里的小差异:不管eventCode键和冒号之间、冒号和REFUND值之间有没有空格,都能成功匹配到目标记录

更靠谱的替代方案(如果你的数据库支持)

其实如果你的数据库支持JSON处理函数(比如MySQL、PostgreSQL、SQL Server这些主流数据库都支持),用专用的JSON函数会比LIKE更精准,能避免误匹配(比如不会把"eventCode": "REFUND_REQUEST"这种不符合要求的记录也查出来)。举个MySQL的例子:

SELECT * FROM notifications WHERE payload->>'$.eventCode' = 'REFUND';

这里的->>是MySQL里提取JSON字符串值的快捷语法,能直接精准定位到eventCode字段,判断它的值是否等于REFUND。

备注:内容来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 09:33:15