我正在努力解决错误日期类型' 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;
再次感谢。
答案 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;