我正在尝试执行下面的代码,但它却给我这种组合的错误。
colud任何人让我知道为什么会出现这个错误?
BEGIN
DECLARE @TimeDimensionDate AS DATE
SET @TimeDimensionDate = '1998-01-01'
Select CONVERT ( DATE,REPLACE (@TimeDimensionDate,SUBSTRING (@TimeDimensionDate,6,2),'01'))
END
由于
答案 0 :(得分:1)
您正在尝试在某个日期使用replace()
。这意味着使用本地设置将日期转换为字符串。一种方法是使用诸如121之类的格式将日期显式转换为字符串。
可替换地:
select dateadd(month, 1 - month(@TimeDimensionDate), @TimeDimensionDate)