读书人

求SQL语句,待

发布时间: 2012-03-18 13:55:39 作者: rapoo

求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

读书人网 >SQL Server

热点推荐