SqlServer 中怎么查询时日期格式化
这篇文章将为大家详细讲解有关SqlServer 中怎么查询时日期格式化,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm
例如:
selectgetdate()2004-09-1211:06:08.177
整理了一下SQL Server里面可能经常会用到的日期格式转换方法:
举例如下:
selectCONVERT(varchar,getdate(),120)2004-09-1211:06:08selectreplace(replace(replace(CONVERT(varchar,getdate(),120),'-',''),'',''),':','')20040912110608selectCONVERT(varchar(12),getdate(),111)2004/09/12selectCONVERT(varchar(12),getdate(),112)20040912selectCONVERT(varchar(12),getdate(),102)2004.09.12selectCONVERT(varchar(12),getdate(),101)09/12/2004selectCONVERT(varchar(12),getdate(),103)12/09/2004selectCONVERT(varchar(12),getdate(),104)12.09.2004selectCONVERT(varchar(12),getdate(),105)12-09-2004selectCONVERT(varchar(12),getdate(),106)12092004selectCONVERT(varchar(12),getdate(),107)0912,2004selectCONVERT(varchar(12),getdate(),108)11:06:08selectCONVERT(varchar(12),getdate(),109)091220041selectCONVERT(varchar(12),getdate(),110)09-12-2004selectCONVERT(varchar(12),getdate(),113)120920041selectCONVERT(varchar(12),getdate(),114)11:06:08.177
Convert第三个参数,进行日期类型转化时的格式:
如Convert(Char(10), GetDate(), 111)
101 美国 mm/dd/yyyy 102 ANSI 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 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM) 110 美国 mm-dd-yy 111 日本 yy/mm/dd 112 ISO yymmdd 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h) 114 - hh:mi:ss:mmm(24h) 120 (*) ODBC 规范 yyyy-mm-dd hh:mm:ss[.fff] 121 (*) ODBC 规范(带毫秒) yyyy-mm-dd hh:mm:ss[.fff] 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(不含空格) 130* 科威特 dd mon yyyy hh:mi:ss:mmmAM 131* 科威特 dd/mm/yy hh:mi:ss:mmmAM
Sql Server 中一个非常强大的日期格式化函数
SelectCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSelectCONVERT(varchar(100),GETDATE(),1):05/16/06SelectCONVERT(varchar(100),GETDATE(),2):06.05.16SelectCONVERT(varchar(100),GETDATE(),3):16/05/06SelectCONVERT(varchar(100),GETDATE(),4):16.05.06SelectCONVERT(varchar(100),GETDATE(),5):16-05-06SelectCONVERT(varchar(100),GETDATE(),6):160506SelectCONVERT(varchar(100),GETDATE(),7):0516,06SelectCONVERT(varchar(100),GETDATE(),8):10:57:46SelectCONVERT(varchar(100),GETDATE(),9):0516200610:57:46:827AMSelectCONVERT(varchar(100),GETDATE(),10):05-16-06SelectCONVERT(varchar(100),GETDATE(),11):06/05/16SelectCONVERT(varchar(100),GETDATE(),12):060516SelectCONVERT(varchar(100),GETDATE(),13):1605200610:57:46:937SelectCONVERT(varchar(100),GETDATE(),14):10:57:46:967SelectCONVERT(varchar(100),GETDATE(),20):2006-05-1610:57:47SelectCONVERT(varchar(100),GETDATE(),21):2006-05-1610:57:47.157SelectCONVERT(varchar(100),GETDATE(),22):05/16/0610:57:47AMSelectCONVERT(varchar(100),GETDATE(),23):2006-05-16SelectCONVERT(varchar(100),GETDATE(),24):10:57:47SelectCONVERT(varchar(100),GETDATE(),25):2006-05-1610:57:47.250SelectCONVERT(varchar(100),GETDATE(),100):0516200610:57AMSelectCONVERT(varchar(100),GETDATE(),101):05/16/2006SelectCONVERT(varchar(100),GETDATE(),102):2006.05.16SelectCONVERT(varchar(100),GETDATE(),103):16/05/2006SelectCONVERT(varchar(100),GETDATE(),104):16.05.2006SelectCONVERT(varchar(100),GETDATE(),105):16-05-2006SelectCONVERT(varchar(100),GETDATE(),106):16052006SelectCONVERT(varchar(100),GETDATE(),107):0516,2006SelectCONVERT(varchar(100),GETDATE(),108):10:57:49SelectCONVERT(varchar(100),GETDATE(),109):0516200610:57:49:437AMSelectCONVERT(varchar(100),GETDATE(),110):05-16-2006SelectCONVERT(varchar(100),GETDATE(),111):2006/05/16SelectCONVERT(varchar(100),GETDATE(),112):20060516SelectCONVERT(varchar(100),GETDATE(),113):1605200610:57:49:513SelectCONVERT(varchar(100),GETDATE(),114):10:57:49:547SelectCONVERT(varchar(100),GETDATE(),120):2006-05-1610:57:49SelectCONVERT(varchar(100),GETDATE(),121):2006-05-1610:57:49.700SelectCONVERT(varchar(100),GETDATE(),126):2006-05-16T10:57:49.827SelectCONVERT(varchar(100),GETDATE(),130):18??????????142710:57:49:907AMSelectCONVERT(varchar(100),GETDATE(),131):18/04/142710:57:49:920AM
常用:
SelectCONVERT(varchar(100),GETDATE(),24):10:57:47SelectCONVERT(varchar(100),GETDATE(),108):10:57:49SelectCONVERT(varchar(100),GETDATE(),12):060516SelectCONVERT(varchar(100),GETDATE(),23):2006-05-16selectCONVERT(varchar(12),getdate(),112):20040912SelectCONVERT(varchar(100),GETDATE(),8):10:57:46
例如:
convert(varchar(100),a.makedate,120)asmakedate
PS:下面给大家介绍Sql Server关于日期查询时,如果表中日期到具体某个时间
1.如果查询日期参数为'2017/02/21',而数据库表中的字段为'2017/02/21 12:34:16.963',则需要格式化一下日期才能查询出来,如下
select*fromtabletwheret.datebetweenCONVERT(datetime,'2017/02/21',120)andCONVERT(datetime,'2017/02/21',120)+'23:59:59');
查询的范围为'2017/02/21 00:00:00'~'2017/02/21 23:59:59',这样就能解决问题。
2.或者使用dateadd方法,把日期加1天,如下
select*fromtabletwheret.date>=CONVERT(datetime,'2017/02/21')andt.date<CONVERT(datetime,dateadd(day,1,'2017/02/21'));
查询的范围为'2017/02/21' <= t.date < '2017/02/22'
,这样也能解决问题。
关于SqlServer 中怎么查询时日期格式化就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。