sql日期模糊
1、打開SQL Server Management Studio管理工具,點擊【新建查詢】,新建一個SQL書寫窗口,用於演示SQL的執行。
2. sql日期的模糊(like)查詢,字斷內日期的格式為yyyy-m-d,針對1日與10幾日,2日與20幾日怎麼區分
SQL Server CONVERT() 函數
SQL Server Date 函數
定義和用法
CONVERT() 函數是把日期轉換為新數據類型的通用函數。
CONVERT() 函數可以用不同的格式顯示日期/時間數據。
語法
CONVERT(data_type(length),data_to_be_converted,style)data_type(length) 規定目標數據類型(帶有可選的長度)。data_to_be_converted 含有需要轉換的值。style 規定日期/時間的輸出格式。
可以使用的 style 值:
Style ID Style 格式
100 或者 0 mon dd yyyy hh:miAM (或者 PM)
101 mm/dd/yy
102 yy.mm.dd
103 dd/mm/yy
104 dd.mm.yy
105 dd-mm-yy
106 dd mon yy
107 Mon dd, yy
108 hh:mm:ss
109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
110 mm-dd-yy
111 yy/mm/dd
112 yymmdd
113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h)
114 hh:mi:ss:mmm(24h)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h)
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h)
126 yyyy-mm-ddThh:mm:ss.mmm(沒有空格)
130 dd mon yyyy hh:mi:ss:mmmAM
131 dd/mm/yy hh:mi:ss:mmmAM
實例
下面的腳本使用 CONVERT() 函數來顯示不同的格式。我們將使用 GETDATE() 函數來獲得當前的日期/時間:
CONVERT(VARCHAR(19),GETDATE())
CONVERT(VARCHAR(10),GETDATE(),110)
CONVERT(VARCHAR(11),GETDATE(),106)
CONVERT(VARCHAR(24),GETDATE(),113)
結果類似:
Dec 29 2008 11:45 PM
12-29-2008
29 Dec 08
29 Dec 2008 16:25:46.635
用121轉換一下,就是中國人習慣的格式了,且3月是03,不出現位數不同的問題,呵呵
3. 關於SQL模糊查詢日期時間的方法
有以下三種方法:
1、Convert轉成String,在用Like查詢
select * from table1 where convert(varchar,yourtime,120) like '2017-06-30%'
2、Between
select * from table1 where yourtime between '2017-06-30 0:00:00' and '2017-06-30 24:59:59'";
3、datediff()函數
select * from table1 where datediff(day,yourtime,'2017-06-30')=0
(3)sql日期模糊擴展閱讀:
滾與上述日期格式的like模糊查詢的注意事項
1、select * from T where sendTime like '%2007_12_%' 可以查詢2007年12月的所有記錄
如果like條件改為'%2007-12-%' ,'%2007_12_3%' ,或'%2007_12_30%' 都查不出數據。
2、select * from T where sendTime like '%12_30%' 可以查詢12月30日的所有記錄
如果like條件改為'%07_12_30%' 也查不出數據。