SQL日期格式大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL 日期格式大全
在函数CONVERT()中你可以使用许多种不同风格的日期和时间格式。
0 Default mon dd yyyy hh:miAM
1 USA mm/dd/yy
2 ANSI yy.mm.dd
3 British/French dd/mm/yy
4 German dd.mm.yy
5 Italian dd-mm-yy
6 - dd mon yy
7 - mon dd,yy
8 - hh:mi:ss
9 Default + milliseconds--mon dd yyyy
hh:mi:ss:mmmAM(or )
10 USA mm-dd-yy
11 JAPAN yy/mm/dd
12 ISO yymmdd
13 Europe Default + milliseconds--dd mon yyyy
hh:mi:ss:mmm(24h)
14 - hh:mi:ss:mmm(24h)
类型0,9,和13总是返回四位的年。对其它类型,要显示世纪,把style值加上100。类型13和14返回24小时时钟的时间。类型0,7,和13返回的月份用三位字符表示(用Nov代表November)。
对表11.1中所列的每一种格式,你可以把类型值加上100来显示有世纪的年(例如,00年将显示为2000年)。例如,要按日本标准显示日期,包括世纪,你应使用如下的语句:
SELECT CONVERT(VARCHAR(30),GETDATE(),111)
在这个例子中,函数CONVERT()把日期格式进行转换,显示为2001/11/30
网友跟贴:
1.
日期格式样式,借以将datetime 或smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或nvarchar 数据类型);或者字符串格式样式,借以将float、real、money 或s mallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或nvarchar 数据类型)。
SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。
在表中,左侧的两列表示将datetime 或smalldatetime 转换为字符数据的style 值。给styl e 值加100,可获得包括世纪数位的四位年份(yyyy)。
不带世纪数位(yy) 带世纪数位(yyyy) 标准输入/输出**
- 0 或100 (*) 默认值mon dd yyyy hh:miAM
(或PM)
1 101 美国mm/dd/ yyyy
2 102 ANSI yy.m m.dd
3 103 英国/法国dd/mm/yy
4 104 德国dd.m m.yy
5 105 意大利dd-mm-y
y
6 10
6 - dd mon yy
7 10
7 - mon dd, yy
8 10
8 - hh:mm:ss
- 9 或109 (*) 默认值+ 毫秒mon dd yyy
y hh:mi:ss:mmmAM(或PM)
10 110 美国mm-dd-yy
11 111 日本yy/ mm/dd
12 112 ISO yymm dd
- 13 或113 (*) 欧洲默认值+ 毫秒dd mon yyyy hh:mm: ss:mmm(24h)
14 11
4 - hh:mi:ss:mmm(24h)
- 20 或120 (*) ODBC 规范yyyy-mm-dd hh:mm:s s[.fff]
- 21 或121 (*) ODBC 规范(带毫秒)yyyy-mm-dd hh:mm:ss[.fff]
- 126(***) ISO8601 yyyy-mm-d
d Thh:mm:ss:mmm(不含空格)
- 130* 科威特d
d mon yyyy hh:mi:ss:mmmAM
- 131* 科威特dd/mm/y
y hh:mi:ss:mmmAM
2.
日期函数
//1.生肖(年份参数:int ls_year 返回参数:string):
mid(fill('鼠牛虎兔龙蛇马羊猴鸡狗猪',48),(mod(ls_year -1900,12)+13)*2 -1,2)
//2.天干地支(年份参数:int ls_year 返回参数:string):
mid(fill('甲乙丙丁戊己庚辛壬癸',40),(mod(ls_year -1924,10)+11)*2 -1,2)+mid(fill('子丑寅卯辰巳午未申酉戌亥',48),(mod(ls_year -1924,12)+13)*2 -1,2)
//3.星座(日期参数:date ls_date 返回参数:string):
mid("摩羯水瓶双鱼白羊金牛双子巨蟹狮子处女天秤天蝎射手摩羯",(month(ls_date)+sign(sign(day(ls_ date) -(19+integer(mid('102123444423',month(ls_date),1))))+1))*4 -3,4)+'座'
//4.判断闰年(年份参数:int ls_year 返回参数:int 0=平年,1=闰年):
abs(sign(mod(sign(mod(abs(ls_year),4))+sign(mod(abs(ls_year),100))+sign(mod(abs(ls_year),40 0)),2)) -1)
//5.某月天数(日期参数:date ls_date 返回参数:int):
integer(28+integer(mid('3'+string(abs(sign(mod(sign(mod(abs(year(ls_date)),4))+sign(mod(abs (year(ls_date)),100))+sign(mod(abs(year(ls_date)),400)),2)) -1))+'3232332323',month(ls_dat e),1)))
//6.某月最后一天日期(日期参数:date ls_date 返回参数:date):
date(year(ls_date),month(ls_date),integer(28+integer(mid('3'+string(abs(sign(mod(sign(mod(ab s(year(ls_date)),4))+sign(mod(abs(year(ls_date)),100))+sign(mod(abs(year(ls_date)),400)), 2)) -1))+'3232332323',month(ls_date),1))))
//7.另一个求某月最后一天日期(日期参数:date ls_date 返回参数:date):
a.
RelativeDate (date(year(ls_date)+sign(month(ls_date) -12)+1,mod(month(ls_date)+1,13)+abs(s ign(mod(month(ls_date)+1,13)) -1),1),-1)
b.
RelativeDate(date(year(ls_date)+integer(month(ls_date)/12),mod(month(ls_date),12)+1,1),-1)
//8.另一个求某月天数(日期参数:date ls_date 返回参数:int):
a.
day(RelativeDate (date(year(ls_date)+sign(month(ls_date) -12)+1,mod(month(ls_date)+1,13)+a bs(sign(mod(month(ls_date)+1,13)) -1),1),-1))
b.
day(RelativeDate(date(year(ls_date)+integer(month(ls_date)/12),mod(month(ls_date),12)+1,1),-1))
//9.某月某日星期几--同PB系统函数DayName(日期参数:date ls_date 返回参数:string):