Mysql 在SQL中查询JSON字符串
我有一个表,它是由JSON字符串组成的单列。JSON有多个键对,是一个字符串,因为它是原始表 其中一个键是Mysql 在SQL中查询JSON字符串,mysql,sql,json,parsing,Mysql,Sql,Json,Parsing,我有一个表,它是由JSON字符串组成的单列。JSON有多个键对,是一个字符串,因为它是原始表 其中一个键是“Ticket”,具有美元金额值。我不确定价格是采用\uuuuu.\uuuu格式,还是仅采用\uuuuuu格式。如果此“Ticket”以6结尾,如96美分或66美分等,我想查询列以返回整个字符串 这是我的疑问: SELECT json FROM tablename WHERE json RLIKE '%"TICKET": "___6",%' OR json RLIKE '%"TICKET":
“Ticket”
,具有美元金额值。我不确定价格是采用\uuuuu.\uuuu
格式,还是仅采用\uuuuuu
格式。如果此“Ticket”
以6结尾,如96美分或66美分等,我想查询列以返回整个字符串
这是我的疑问:
SELECT json FROM tablename
WHERE json RLIKE '%"TICKET": "___6",%'
OR json RLIKE '%"TICKET": "__._6",%'
当前返回为空
如果美元金额以6结尾(如6美分),如何获取整个字符串?您使用的搜索字符串就是您要使用的字符串 所以你可以用: 或带有正则表达式的:
select * from tablename
where json RLIKE '"TICKET":[ ]*"[0-9.]+6"'
标记您的RDBMS(sql server、oracle等)及其版本。在不知道数据的情况下,很难判断这有什么问题,但这些下划线要求数据具有准确的字符数。您使用的是哪种DBMS?博士后?神谕DB2?火鸟?这是我需要的。我今天太累了,想不起来我应该把它改成正则表达式而不是通配符。谢谢
select * from tablename
where json RLIKE '"TICKET":[ ]*"[0-9.]+6"'