一、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處理自己類型的,確定要好一些。