sql中的date的使用
前提:查询的时间范围为传入的参数
原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的使用相关推荐
- hive sql中传date 指定后的“%Y-%m-%d“格式,需要加引号
其中dt_playtime在shell中的变量赋值为dt_playtime=`date -d "$dt" +"%Y-%m-%d"` ##需要传递为字符串,加引号 ...
- 【转】Struts2中转换Date类型的问题
好久没有写Blog了,最近似乎变懒了.今天上班没有很多事,于是把之前遇到的一个问题记录下来. Web开发会涉及到很多类型转换的情况.我们知道,页面中的一切值都是字符串类型,而到后台,我们需要的可能是其 ...
- 数据库学习day_02:表格相关sql语句 / 表格数据相关sql语句 / sql中的数据类型 / 导入外部sql文件 / 去重.是否为null.and与or.in.[x,y]
1.表相关的SQL语句 操作表相关的SQL 必须先使用某个数据库 create database mydb1; show create database mydb1; use mydb1; 如果默认不 ...
- Oracle sql 中的字符(串)替换与转换[转载]
1.REPLACE 语法:REPLACE(char, search_string,replacement_string) 用法:将char中的字符串search_string全部转换为字符串repla ...
- 【转】 LINQ TO SQL中的selectMany
首先看SelectMany的定义: Queryable中的SelectMany 方法:将序列的每个元素投影到一个 IEnumerable<(Of <(T>)>) 并将结果序列组 ...
- SQL中的CASE WHEN语句
有这样一道面试题: 一张表数据如下 1900-1-1 胜 1900-1-1 胜 1900-1-1 负 1900-1-2 胜 1900-1-2 胜 写出一条SQL语句,使检索结果如下: 胜 负 1900 ...
- sql中当前日期加2个月_一文搞定Mysql日期时间函数
总第184篇/张俊红 日期和时间函数部分也是我们日常工作中使用频率比较高的一部分.这一篇我们主要讲讲Mysql里面的日期时间相关的函数,不同数据库之间基本相同,只会有个别函数的差异.大家掌握一个数据库 ...
- SQL中合并多行记录的方法总汇
SQL中合并多行记录的方法总汇 --前几天还在抱怨:sql只有sum(数值),不能sum(字符串) --如果不是分组统计,用select @values = @values + ',' + value ...
- pl/sql 中关于exception的学习笔记
1.异常的优点 如果没有异常,在程序中,应当检查每个命令的成功还是失败,如 BEGIN SELECT ... -- check for 'no data found' error SELECT ... ...
最新文章
- 301 Remove Invalid Parentheses 删除无效的括号
- xcode添加fstream类库
- 【C# 调用 Go 语言】0x2 参数、返回值与类型转换
- vue组件化通信之父向子传值
- 基于JAVA+SpringMVC+Mybatis+MYSQL的保险销售管理系统
- uat测试用例和sit测试用例_软件测试用例设计时的颗粒度
- Mac环境下安装Pod
- [Python学习笔记][第八章Python异常处理结构与程序调试]
- thinkphp实现文章访问量计数器
- 淘宝又出新规,无货源淘宝还能玩吗?
- 在VMware下安装中标麒麟操作系统7.0以及Neokylin基础常用知识
- 提交网址到bing搜索引擎
- 显卡天梯图2020年10月完整版
- java制作小鱼吃大鱼_大鱼吃小鱼游戏(Java编写)
- Cisco AP-Regulatory Domain
- 微信小程序实现点击按钮退出功能
- docker创建容器一直restart解决
- 2022年5月协会与各专委会大事记
- 大数据产品经理python_大数据岗位要求之数据产品经理
- Intouch IDE