首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求SQL语句,待

2012-03-18 
求SQL语句,在线等待~字符串转日期函数字段名:year,month,day数据:2007,3,16类型:varchar如何把这三个字段

求SQL语句,在线等待~
字符串转日期函数
字段名:year,month,day
数据:2007,3,16
类型:varchar
如何把这三个字段串在一起转化成datetime型的

我这样写的,select   convert(datetime,(year+ '- '+month+ '- '+day),120)   from   aaa

但提示我:从   char   数据类型到   datetime   数据类型的转换导致   datetime   值越界。


大家帮帮忙啊

[解决办法]
select cast(year+ '- '+month+ '- '+day as datetime) as 转换结果 from aaa

[解决办法]
declare @t table(year varchar(20),month varchar(20),day varchar(20))
insert @t select '2007 ', '3 ', '16 '


select convert(datetime,(year+ '- '+month+ '- '+day),120) from @t
---结果
2007-03-16 00:00:00.000

[解决办法]
楼主本身语句是对的,只是数据库里的数据有的不符合要求罢了
请楼主查查,是不是月份或日期超出范围

[解决办法]
xiaoxi1031(小西) ( ) 信誉:100 Blog 2007-03-16 15:34:28 得分: 0


从 char 数据类型到 datetime 数据类型的转换导致 datetime 值越界。

老是报这个错


--------

這個錯誤就是由於組合出來的時間不符合造成的。

比如
Year 2007
Month 2
Day 30

這樣就會報錯

热点排行