是否可以設置一個變量,其中年份是變量?是否可以使用動態年份的SQL日期?
例如,
而不是
SET @Date1 = '2014-01-25 00:00:00.000';
我想
SET @Year = 2014 int;
SET @Date1 = '@Year-01-25 00:00:00.000';
是否可以設置一個變量,其中年份是變量?是否可以使用動態年份的SQL日期?
例如,
而不是
SET @Date1 = '2014-01-25 00:00:00.000';
我想
SET @Year = 2014 int;
SET @Date1 = '@Year-01-25 00:00:00.000';
是
很多不同的方式,包括DATEFROMPARTS(年,月,日)
@Date1 = DATEFROMPARTS (2014,01,25)
還包括cast(),這取決於數據庫引擎。 –
這是SQL Server ** 2012 **中的**新功能**,在早期版本中不可用 –
嘗試
SET @Date1 = CONVERT(datetime, CONVERT(varchar(4), @Year) + '-01-25', 102)
這一數字102的第三個參數是用來轉換的風格。您可以在此處看到完整樣式列表:http://msdn.microsoft.com/en-us/library/ms187928.aspx 向下滾動到Date and Time styles
'SET @ Date1 = @Year +'-01-25 00:00:00.000''然而,年份必須是字符串。 – paqogomez
@paqogomez Msg 206,Level 16,State 2,Line 16 操作數類型衝突:int與日期不兼容 – pgunston
SET @ Date1 = CONVERT(VARCHAR,@Year)+'-01-25 00:00:00.000''將@年份轉換爲字符串,就像@paqogomez在他的評論中所述。 –