java用sql语句查询某一时间段内的记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java用sql语句查询某一时间段内的记录相关的知识,希望对你有一定的参考价值。

时间被我定义为varchar类型了,格式为2015-10-21 21:20:30,现在我想用java查询数据库中15年10月1日到15年10月20日的记录,应该怎么操作?

ps:不是我不想定义为时间类型,而是定义为时间类型之后我不会用Java对记录进行读写,求大神给个解决方案或者给个例子
是数据库里的时间被我定义为varchar类型了

查的时候用时间转换函数吧字符串格式的时间转成date类型的,就好了
再有java中有专门处理数据库date类型数据的类,
java.sql.Date
或者也可以使用过Timestamp
参考技术A 利用to_char()和to_date()转换一下类型就行了 参考技术B 先order by 一下时间,where 限定吧。

根据日期获取某一时间段内的数据

2019-08-19

根据日期时间查询某一时间段的数据可以按照以下操作,仅仅是一个sql语句的问题:

1、mapper.xml层代码

 1 <select id="findTaxDetails" resultType="com.example.pojo.TaxDetails">
 2        select td_tax_date, td_tax_payable, td_detail from tax_details
 3        inner join contractor 
 4        on contractor.ct_id = tax_details.ct_id
 5        where contractor.mobile = #mobile
 6        <if test="startDate != null and startDate != ‘‘">    //关键位置
 7        and td_tax_date <![CDATA[>=]]> #startDate
 8        </if>
 9        <if test="endDate != null and endDate != ‘‘">
10        and td_tax_date <![CDATA[<=]]> #endDate
11        </if>
12     </select>    

2、mapper.java层代码

 1     /**
 2      * 收入查看,根据公司名称或者月份匹配
 3      * @param startDate  查询的开始时间
 4      * @param endDate    查询的结束时间 
5
* @return 6 */ 7 List<IncomeDetails> findIncomeDetails(@Param("startDate")String startDate, @Param("endDate")String endDate, @Param("mobile")String mobile, @Param("customerId")Integer customerId);

以上是关于java用sql语句查询某一时间段内的记录的主要内容,如果未能解决你的问题,请参考以下文章

SQL语句:查询某一年、月、日的记录

mysql进阶 十九 SQL语句如何精准查找某一时间段的数据

查询大于某一时间段的的数据记录,mysql数据库的查询语句该如何写!

MYSQL数据库,怎样查询一个时间范围内,每个时间点内的数据?

access2007数据库用SQL语句查询时间段内的数据

SQL语句来判断数据库某一列下是不是有相同值的记录方法