玖叶教程网

前端编程开发入门

oracle中to_date和to_char的区别,尤其日期区间的统计别用错

项目中客服反馈问题,订单报表中用to_date统计数据筛选5月份数据发现少统计了2条,通过统计2022年5月的订单发送ERP数据比较to_date和to_char的区别,总结下,希望看到的别踩坑了。

  • 开始用的to_date

查询之后你会惊奇的发现,居然没有 2022-05-31的数据,其实使用to_date,如果最小单位是日,那他的下区间其实是<=to_date('2022-05-31 00:00:00','yyyy-MM-dd HH24:mi:ss'),而上区间取得是>=to_date('2022-05-01 00:00:00','yyyy-MM-dd HH24:mi:ss'),那我统计某个月的订单发送量,下区间还要加上 23:59:59,或者多算一天,这那也太麻烦了,所以如果统计区间的单位最小是天 ,建议使用 to_char就可以解决这个问题。

  • 改成to_char后

如上图结果所示,2022-05-31刚好少的2条数据就查询出来了。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言