sqlserver 2005 日期类型与字符类型转换

    之前一直再用oracle,对oracle的日期类型和字符类型还是比较熟悉,用起来也很方便。目前再做一个android的服务端,客服需要用到的是sqlserver2005,重新学习了一下sqlserver数据库。总结一下他的类型转换函数,虽然很简单,我想写微博从简单的开始。
    在sqlserver帮助中介绍了CAST 和 CONVERT 函数,他们的语法如下:
Syntax for CAST:
CAST ( expression AS data_type [ (length ) ])
Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
我们可以发现,他们的功能是一样的,只是语法稍有差别,convert可以格式化日期和数值,下面就去几个例子:
1.日期转换为字符
select convert(varchar(10),t.rksj,120) from td_card t 
--结果:2013-06-22
select cast(t.rksj as varchar(10)) from td_card t
--结果:06 22 2013

2.字符转换为日期
select convert(datetime ,'20130602')
--结果:2013-06-02 00:00:00.000
select cast('20130602' as datetime)
--结果:2013-06-02 00:00:00.000

下面看下日期类型有哪些style值
0或100:mon dd yyyy hh:miAM(或 PM):
101:mm/dd/yyyy:
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
9 或 109:mon dd yyyy hh:mi:ss:mmmAM(或 PM)
110:mm-dd-yy
111:yy/mm/dd
112:yymmdd
13 或 113:dd mon yyyy hh:mm:ss:mmm(24h)
114:hh:mi:ss:mmm(24h)
20 或 120:yyyy-mm-dd hh:mi:ss(24h)
21 或 121:yyyy-mm-dd hh:mi:ss.mmm(24h)
126:yyyy-mm-ddThh:mm:ss.mmm(无空格)
127:yyyy-mm-ddThh:mm:ss.mmmZ (无空格)
130:dd mon yyyy hh:mi:ss:mmmAM
131:dd/mm/yy hh:mi:ss:mmmAM

其实看帮助文档会更全更清楚。。。





 

猜你喜欢

转载自eclipower.iteye.com/blog/1892404
今日推荐