Oracle+Mybatis日期搜索條件

一、startTime = StringUtils.isBlank(startDate) ? null : (startTime + " 00:00:00")索引

     endTime = StringUtils.isBlank(endDate) ? null : (endTime + " 23:59:59"));字符串

比較:create_time >= to_date(#{startTime}, 'yyyy-mm-dd HH24:mi:ss')效率

效率高些。date

二、trunc(create_time) >= to_date(#{startDate}, 'YYYY-MM-DD')im

三、若是是WHERE條件中,選擇是否轉換日期字段爲字符串和字符串比,co

例如to_char(datecolumn,'yyyy-mm-dd') = '2011-07-13',字符

仍是日期類型的字段和轉傳進來的字符串轉日期比,time

datecolumn = to_date('2011-07-13','yyyy-mm-dd')。
若是字段是日期類型,仍是保留原有的日期,使用日期比日期,日期

由於這樣比較,首先若是你在這個字段有索引的話,索引有效。不然轉字符索引會失效。tar

並且讓ORACLE處理自己類型的,確定要好一些。

相關文章
相關標籤/搜索