2008-11-10 54 views
13

我回顧了一些SQL查詢,我看到這個樣子T-SQL:使用爲{fn NOW()}其中

SELECT * 
FROM dbo.mytable 
WHERE (dbo.mytable.[Date] < { fn NOW() }) 

什麼是使用爲目的的select語句的WHERE語句像這樣?

使用簡單的GETDATE()會不會更容易?

回答

24

http://www.sqlservercentral.com/Forums/Topic183904-8-1.aspx

GETDATE()是返回當前系統日期和 時間T-SQL特定功能。 SQL標準等價物是CURRENT_TIMESTAMP,它也適用於T-SQL中的 。 {fn Now()}是ODBC規範函數 ,可以在T-SQL中使用,因爲SQL Server的OLE DB提供程序支持 它們。這些雖然沒有顯着的性能差異。您 也可以使用規範格式,如:

SELECT {fn CURRENT_TIMESTAMP()} AS "date & time", 
     {fn CURRENT_DATE()} AS "date only", 
     {fn CURRENT_TIME()} AS "time only" ; 
+0

我無法訪問提及的文章。它要求我登錄。 – 2008-11-10 21:43:17