2011-07-25 61 views
1

這是我寫的一個查詢,我想可能是我想要的。我認爲,通過觀察它,你可以看到我想要做的事:在T-SQL中動態分割日期時間字段

INSERT INTO tbTime 
SELECT DISTINCT 
    DATEPART(yyyy, ed), 
    DATEPART(mm, ed), 
    DATEPART(dd, ed), 
    EntireDate AS ed 
FROM test 

我基本上是在從另一個表複製日期字段,但我想它分成年,月,日田野上。上面的查詢雖然不會工作:

Invalid column name 'ed'.

我使用SQL Server 2008,謝謝!

回答

3

您不能別名字段,然後在SELECT語句的其他部分使用該別名。

嘗試:

INSERT INTO tbTime 
SELECT DISTINCT 
    DATEPART(yyyy, EntireDate), 
    DATEPART(mm, EntireDate), 
    DATEPART(dd, EntireDate), 
    EntireDate AS ed 
FROM test 
+0

謝謝,不知道爲什麼,我忽視了。 –