mybatis查询mysql的时间段,mybatis查询mysql
mapper文件的写法为:(模糊查询,查询时间段)
<if test="com_name!=null and com_name!=''"> and sc.com_name like CONCAT(CONCAT('%',#{com_name}),'%') </if> <if test="check_begin_date!=null and check_begin_date!=''"> <![CDATA[ and DATE_FORMAT(tcb.check_begin_date, '%Y-%m-%d') >= DATE_FORMAT(#{check_begin_date}, '%Y-%m-%d') ]]> </if> <if test="check_end_date!=null and check_end_date!=''"> <![CDATA[ and DATE_FORMAT(tcb.check_begin_date, '%Y-%m-%d') <= DATE_FORMAT(#{check_end_date}, '%Y-%m-%d') ]]> </if>
你的要求是 '2010-7-12 11:18:54' 到 '2010-7-12 11:22:20' 之间的
显然2010-7-12 11:18:46 和 2010-7-12 11:22:22不在二者之间,为什么要包含在结果集内?
我也附议楼上三位
select sum(csize) from table where cdtime between '2010-7-12 11:18:54' and '2010-7-12 11:22:20'
--------------------------------------------
那如果表里再多一行 '2010-7-12 11:22:21', 结果集是6个还是5个?
这显然属于你的描述出了问题
--------------------------------------------
很遗憾,请给出更清晰的描述
即使用你的嵌套查询,结果集也会是5,不会是6
是的,可以。
你要搞清楚一个概念,我们在查询关系数据库时用到的语句是SQL,这是为大多数关系数据库管理系统所支持的工业标准,所以不管我们是查Mysql还是查Oracle等数据库都是一样的SQL,不管是用java还是用C#,也是一样的
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。