MyBatis Sqlserver日期比較

SqlServer時間與字符串相互轉換: SQL Server Date 函數

CONVERT(目標類型,'輸入內容'[時間/字符串],格式);

  • 字符串轉爲時間類型
    CONVERT(datetime,‘2017-12-12 00:00:01’, 20)

  • 日期轉換爲字符串
    CONVERT(varchar(100), GETDATE(), 20)


1.參數爲時間類型,數據庫字段爲時間類型

直接比較

![CDATA[
BIRDAY >= #{startTime} AND BIRDAY < #{endTime}
]]>

入參變爲”yyyy-MM-dd HH:mm:ss'“,如果什麼都不加的話,默認是timestamp

<![CDATA[
BIRDAY >= #{startTime,jdbcType= DATETIME}  AND BIRDAY < #{endTime,jdbcType= DATETIME}
]]

入參變爲”yyyy-MM-dd “

<![CDATA[  
BIRDAY >= #{startTime,jdbcType=DATE} AND BIRDAY < #{endTime,jdbcType=DATE}
]]>

2.參數爲時間類型,數據庫字段爲String類型

<![CDATA[  
CONVERT(DATETIME,BIRDAY, 20)   >= #{startTime,jdbcType= DATETIME} 
AND CONVERT(DATETIME,BIRDAY, 20) < #{endTime,jdbcType= DATETIME}
]]>

3.其他

3.1 <![CDATA[ ]]>:<![CDATA[ ]]>

是XML語法,在CDATA內部的所有內容都會被解析器忽略。如果寫的sql中有一些特殊的字符的話,在解析xml文件的時候會被轉義,如果我們不希望被轉義,使用<![CDATA[ ]]>來解決。

3.2 MySQL

STR_TO_DATE(str,format)時間格式的字符串(str),按照所提供的顯示格式(format)轉換爲DATETIME類型
DATE_FORMAT(date,format)日期轉換爲對應的字符串格式

3.3 sql 在線練習網站
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章