mysql截取字符串用作where条件查询

时间:2022-07-21 07:33:38

昨天遇到一个需求,本来订单表是只有指定日期查询订单,要做成时间段查询,接到需求的时候还想小意思,分分钟搞定,然后现实给我当头一棒,代码写好之后运行,发现查询出来的结果好像和预期结果有点差距(这不是BUG,只是效果和预期有差距,嗯,是这样的)

排查代码和SQL没发现问题,然后打开数据库,看日期存储的时候,瞬间觉得这个设计的人可能是鬼才mysql截取字符串用作where条件查询,正常操作没有这种存储的吧,从业2年了没见过这种操作。。。。

 

然后修改SQL语句,使用UNIX_TIMESTAMP(LEFT(time,10)) >= UNIX_TIMESTAMP('".$filter['y_real_time']."') 解决,其中time是我数据库存储字段名称,$filter['y_real_time']为传入的日期