mysql中json字段查询时间范围的方法
在开发过程中经常会定义一些扩展字段,且需要增加查询,在以往的mysql版本中,json结构是不支持查询的,这样就导致我们不得不新定义字段。在mysql 5.7之后,为了解决这一问题,增加了相关的查询。具体通过下面两种方法,即可快速实现通过json结构进行查询了。下面是一个以日期查询为例子的两种处理方式:
select * from order whereUNIX_TIMESTAMP(JSON_EXTRACT(ext_info, '$.day')) BETWEEN UNIX_TIMESTAMP('2020-11-11') AND UNIX_TIMESTAMP('2020-11-11')select * from order where JSON_UNQUOTE(JSON_EXTRACT(ext_info, '$.day')) BETWEEN ('2020-11-11') AND ('2021-11-20')
怎么样,简单粗暴吧,是否解决了大家的问题?注意要用5.7以上的版本,这是mysql后来加的,所以之前有些版本是不支持的。
赞 (0)