1.获取今天的0点和今天的23:59:59
select a.order_sn,a.is_delete from nur_pro_trade.ns_order_service_deduct a left join ptcs_pro_extended.ns_attendant_service_record b on a.order_sn=b.order_sn where
(a.service_start_date >=DATE_FORMAT(CURDATE(),'%Y-%m-%d %H:%i:%s') and a.service_start_date <= DATE_SUB(DATE_ADD(CURDATE(), INTERVAL 1 DAY),INTERVAL 1 SECOND)) and a.is_delete = 0 and b.id is null
函数解析:DATE_FORMAT(CURDATE(),’%Y-%m-%d %H:%i:%s’)
1》select DATE_FORMAT(CURDATE(),’%Y-%m-%d %H:%i:%s’);查出来是今天的0点
2》DATE_SUB(DATE_ADD(CURDATE(), INTERVAL 1 DAY),INTERVAL 1 SECOND)) ;今天加一天减一秒,就是今天的23:59:59
获取明天的0点和今天的23:59:59
2.获取明天的0点和23:59:59
select a.order_sn,a.is_delete from nur_pro_trade.ns_order_service_deduct a left join ptcs_pro_extended.ns_attendant_service_record b on a.order_sn=b.order_sn where
(a.service_start_date >=DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL 1 DAY),’%Y-%m-%d %H:%i:%s’) and a.service_start_date <= DATE_SUB(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL 1 DAY), INTERVAL 1 DAY),INTERVAL 1 SECOND)) and a.is_delete = 0 and b.id is null
–》DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL 1 DAY),’%Y-%m-%d %H:%i:%s’);明天的0点
–》DATE_SUB(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL 1 DAY), INTERVAL 1 DAY),INTERVAL 1 SECOND);明天的23:59:59
SQL查询技巧:获取特定日期范围的数据
这篇博客探讨了如何使用SQL查询获取当前日期的0点和23:59:59,以及明天同一时间段的数据。通过DATE_FORMAT和DATE_SUB函数的组合,可以精确地指定日期和时间。博客内容涉及日期时间操作,数据库查询优化,适用于数据库管理和数据分析人员。
1477

被折叠的 条评论
为什么被折叠?



