需要在Sql中处理日期类型'1900-01-01 00:00:00.000'

时间:2014-04-10 15:26:39

标签: sql-server tsql date

我正在努力解决错误日期类型' 1900-01-01 00:00:00.000'在Sql&中使用空字符串然后我想在变量中返回更正日期或空字符串。我试过以下&想检查是否有更好的方法来做同样的事情。请帮助。

注意:我的查询一次只能返回一个日期值。因此,查询值刷新时会出现任何问题。

declare @v_date datetime

select @v_date = (select Date_Released from dbo.Tbl_Workstream where Loan_Number = 'XXX')

SELECT v = CASE WHEN @v_date = '1900-01-01 00:00:00.000'

                              THEN ''

                              ELSE CONVERT(CHAR(23), @v_date, 21)

END FROM @v_date;

再次感谢。

1 个答案:

答案 0 :(得分:2)

如果希望结果能够显示空字符串,则需要使用其中一种字符串类型(char,varchar等)

declare @v_date char(23);
select @v_date = CONVERT(char(23), 
          (select Date_Released from dbo.Tbl_Workstream where Loan_Number = 'XXX'), 21);
select case when @v_date = '1900-01-01 00:00:00.000' THEN '' ELSE @v_Date END as V;