日期:2014-05-19  浏览次数:20653 次

求sql一个日期转换方式:
数据库的ssdate字段是var型内容是这样的2004-5-6,或是2005-09-12这样的,现在我想做个判断和另外的日期比较格式是20040506这样的,有没有什么方法把2004-5-6和2005-09-12这样的转换成20040506这样的?应该不是很难吧?可是我就是不懂!

------解决方案--------------------
LTRIM(DATEPART(YEAR,ssDate)) +
RIGHT( '00 ' + LTRIM(DATEPART(MONTH,ssDate)),2) +
RIGHT( '00 ' + LTRIM(DATEPART(DAY,ssDate)),2)
------解决方案--------------------
declare @str varchar(10)
select @str = '2004-5-6 '
SELECT STUFF(STUFF(CONVERT(char(8),convert(datetime,@str),112),5,0,N ' '),8,0,N ' ')+N ' '
select @str = '2005-09-12 '
SELECT STUFF(STUFF(CONVERT(char(8),convert(datetime,@str),112),5,0,N ' '),8,0,N ' ')+N ' '


------解决方案--------------------
楼上用STUFF的诸位,字段的值格式可能是不固定的
你并不知道什么时候出现****-**-**或****-*-**或****-*-*