sql语句编写,字段里存的是json串,需要根据json串里边的数据查询表里的数据,求大神啊

ntoyota 2014-03-31 03:29:11
例: 在tag表里的 json 列存的数据是 {"3":["3","12"],"2":["4","13"],"1":["2"],"4":["4","12","13"]},
现在想如果条件 "4":["12"] 该怎么查询数据呢?求各位大神给解答一下啊,

我用的是mysql数据库
...全文
809 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ntoyota 2014-04-04
  • 打赏
  • 举报
回复
引用 2 楼 gleiyu 的回复:
可以试试用正则匹配,我没装mysql,只在oracle里测试了下,你可以改成mysql的函数

SELECT T.JSON  FROM T_C T WHERE REGEXP_LIKE(T.JSON,'^.*"4":\[.*"12".*\]');

谢谢了,我正则太差了,这个我不知道怎么改,不过还是谢谢了
ntoyota 2014-04-04
  • 打赏
  • 举报
回复
引用 1 楼 hidanger521 的回复:
直接like '%"4":[%"12"%]%'不行么
额,谢谢了,这两天忙,没来得及看,我试了试可以的,之前进到一个误区了,没想到用多个百分号
gleiyu 2014-03-31
  • 打赏
  • 举报
回复
可以试试用正则匹配,我没装mysql,只在oracle里测试了下,你可以改成mysql的函数

SELECT T.JSON  FROM T_C T WHERE REGEXP_LIKE(T.JSON,'^.*"4":\[.*"12".*\]');

流浪川 2014-03-31
  • 打赏
  • 举报
回复
直接like '%"4":[%"12"%]%'不行么

3,492

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧