2009-08-21 87 views
0

在Sql Server 2008中,他們添加了新的DATE和TIME數據類型,補充了DATETIME。
我想一個日期和時間組合成DATETIME,心想也許會明顯的工作,我可以做Sql Server中的自定義數據類型操作符?

SELECT DATEFLD + TIMEFLD FROM MYTABLE 

和DATE + TIME將返回相應的DATETIME。不幸的是,這有點太明顯,並沒有奏效。所以我想知道,Sql Server有沒有辦法重載操作符,創建一個覆蓋「+」來處理DATE + TIME => DATETIME。

回答

1

CAST爲smalldatetime第一

DECLARE @d date, @t time 

SELECT @d = getdate(), @t = getdate() 

SELECT cast(@d as smalldatetime) + cast(@t as smalldatetime) 

我不記得在那裏我看到了這一點,我不記得爲什麼。對不起

SQL不提供超載,幸運的是...

+0

有趣的是,這確實有效,但它似乎有點奇怪。我也有一些值的轉換錯誤...我現在沒有興趣跟蹤。但有趣的是,在大多數情況下知道這種方法是有效的。謝謝(你的)信息! – eidylon 2009-08-23 03:42:12

相關問題