前提:查询的时间范围为传入的参数

原sql语句传参date(a.send_time) >= :startDate AND date(a.send_time) <= :endDate

private static String smsSql = "SELECT count(1) FROM (SELECT
a.phone FROM cl_sms a LEFT JOIN cl_user b ON a.phone = b.login_nameLEFT JOIN cl_user_base_info c ON b.id = c.user_id" +  " WHERE date(a.send_time) >= :startDate AND date(a.send_time) <= :endDate GROUP BY a.phone ) d";

调用的sql语句sDate,eDate为传入的时间范围

MapSqlParameterSource params = new MapSqlParameterSource();params.addValue("startDate", sDate);params.addValue("endDate", eDate);
List<Map<String, Object>>  list = firstJdbcTemplate.queryForList(sql,params);

不使用date时,传入的参数的时分秒被截取掉了2018-03-01 00:00:00--2018-04-01 00:00:00

SELECT count(1) FROM (SELECT a.phone FROM cl_sms a LEFT JOIN cl_user bON a.phone = b.login_name LEFT JOIN cl_user_base_info c ON b.id = c.user_id WHERE a.send_time >= '2018-03-01'AND a.send_time <= '2018-04-01'AND  OR c.real_name NOT IN ('A Sunu Widyatmoko','jarry','king' ) )GROUP BY a.phone) d;

不使用date时,传入时间参数带着时分秒2018-03-01 00:00:00--2018-04-01 23:59:59

SELECT count(1) FROM (SELECT a.phone FROM cl_sms a LEFT JOIN cl_user bON a.phone = b.login_name LEFT JOIN cl_user_base_info c ON b.id = c.user_id WHERE a.send_time >= '2018-03-01 00:00:00'AND a.send_time <= '2018-04-01 23:59:59'AND  OR c.real_name NOT IN ('A Sunu Widyatmoko','jarry','king' ) )GROUP BY a.phone) d;

使用date时,传入的参数的时分秒被截取掉了2018-03-01 00:00:00--2018-04-01 23:59:59

SELECT count(1) FROM (SELECT a.phone FROM cl_sms a LEFT JOIN cl_user bON a.phone = b.login_name LEFT JOIN cl_user_base_info c ON b.id = c.user_id WHERE date(a.send_time) >= '2018-03-01'AND date(a.send_time) <= '2018-04-01'AND  OR c.real_name NOT IN ('A Sunu Widyatmoko','jarry','king' ) )GROUP BY a.phone) d;

针对有关时间范围的查询还是需要谨慎,否则间隔一天时间

sql中的date的使用相关推荐

  1. hive sql中传date 指定后的“%Y-%m-%d“格式,需要加引号

    其中dt_playtime在shell中的变量赋值为dt_playtime=`date -d "$dt" +"%Y-%m-%d"` ##需要传递为字符串,加引号 ...

  2. 【转】Struts2中转换Date类型的问题

    好久没有写Blog了,最近似乎变懒了.今天上班没有很多事,于是把之前遇到的一个问题记录下来. Web开发会涉及到很多类型转换的情况.我们知道,页面中的一切值都是字符串类型,而到后台,我们需要的可能是其 ...

  3. 数据库学习day_02:表格相关sql语句 / 表格数据相关sql语句 / sql中的数据类型 / 导入外部sql文件 / 去重.是否为null.and与or.in.[x,y]

    1.表相关的SQL语句 操作表相关的SQL 必须先使用某个数据库 create database mydb1; show create database mydb1; use mydb1; 如果默认不 ...

  4. Oracle sql 中的字符(串)替换与转换[转载]

    1.REPLACE 语法:REPLACE(char, search_string,replacement_string) 用法:将char中的字符串search_string全部转换为字符串repla ...

  5. 【转】 LINQ TO SQL中的selectMany

    首先看SelectMany的定义: Queryable中的SelectMany 方法:将序列的每个元素投影到一个 IEnumerable<(Of <(T>)>) 并将结果序列组 ...

  6. SQL中的CASE WHEN语句

    有这样一道面试题: 一张表数据如下 1900-1-1 胜 1900-1-1 胜 1900-1-1 负 1900-1-2 胜 1900-1-2 胜 写出一条SQL语句,使检索结果如下: 胜 负 1900 ...

  7. sql中当前日期加2个月_一文搞定Mysql日期时间函数

    总第184篇/张俊红 日期和时间函数部分也是我们日常工作中使用频率比较高的一部分.这一篇我们主要讲讲Mysql里面的日期时间相关的函数,不同数据库之间基本相同,只会有个别函数的差异.大家掌握一个数据库 ...

  8. SQL中合并多行记录的方法总汇

    SQL中合并多行记录的方法总汇 --前几天还在抱怨:sql只有sum(数值),不能sum(字符串) --如果不是分组统计,用select @values = @values + ',' + value ...

  9. pl/sql 中关于exception的学习笔记

    1.异常的优点 如果没有异常,在程序中,应当检查每个命令的成功还是失败,如 BEGIN SELECT ... -- check for 'no data found' error SELECT ... ...

最新文章

  1. 301 Remove Invalid Parentheses 删除无效的括号
  2. xcode添加fstream类库
  3. 【C# 调用 Go 语言】0x2 参数、返回值与类型转换
  4. vue组件化通信之父向子传值
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的保险销售管理系统
  6. uat测试用例和sit测试用例_软件测试用例设计时的颗粒度
  7. Mac环境下安装Pod
  8. [Python学习笔记][第八章Python异常处理结构与程序调试]
  9. thinkphp实现文章访问量计数器
  10. 淘宝又出新规,无货源淘宝还能玩吗?
  11. 在VMware下安装中标麒麟操作系统7.0以及Neokylin基础常用知识
  12. 提交网址到bing搜索引擎
  13. 显卡天梯图2020年10月完整版
  14. java制作小鱼吃大鱼_大鱼吃小鱼游戏(Java编写)
  15. Cisco AP-Regulatory Domain
  16. 微信小程序实现点击按钮退出功能
  17. docker创建容器一直restart解决
  18. 2022年5月协会与各专委会大事记
  19. 大数据产品经理python_大数据岗位要求之数据产品经理
  20. Intouch IDE

热门文章

  1. 第八讲:工业网络——单环冗余(理论)
  2. 使用范例调教ChatGPT
  3. 智伴机器人三级分销模式_三级分销系统是什么模式
  4. 检测样本分布是不是正态分布,绘制其正态分布概率图及异常值检测-python代码实现
  5. 前端练习——弹窗、判断语句 (星座测试)
  6. 数字电路——余3循环码
  7. KeyMix for Mac破解教程
  8. 信奥学习规划 信息学竞赛之路(2022.07.31)
  9. sqlserver语法
  10. Win10打开任务管理器卡死的解决方法