這是我的查詢。在Coldfusion中比較日期時間值,而不是日期CFQUERY
<cfquery name="qryname" datasource="dsn">
UPDATE ticketlist
SET status = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="Expired">
WHERE expdatetime <
<cfqueryparam value = "#yourDate#" cfsqltype = "CF_SQL_DATE" maxLength = "19">
</cfquery>
它能夠給我所有誰是expdatetime小於#yourdate#的結果,唯一的問題是,它只能說明我是誰的區別是一整天的結果,而不是那些誰的區別是在分鐘。因此,expdatetime的差異小於#yourtime#by min's將不會顯示在結果中,除非差距至少有一天。
如何針對最小精度對此查詢進行優化?
我知道可能使用的兩個函數,DateCompare的DateDiff &,但我不知道如何在查詢中應用它們。
DateDiff的( 「日期部分」, 「日期1」, 「日期2」)
DateCompare( 「DATE1」, 「DATE2」[ 「日期部分」])
DATEPART精密
* s Precise to the second
* n Precise to the minute
* h Precise to the hour
* d Precise to the day
* m Precise to the month
* yyyy Precise to the year
任何幫助將不勝感激。
我相信這是正確的。通過使用CF_SQL_DATE,可以消除時間信息,因此數據庫服務器必須比較的所有內容都是日期信息;因此最準確的可能是一天。如果你包含時間信息,那麼它將在計算中使用它。 – 2010-06-28 11:39:15
這解決了它。不勝感激! – Nich 2010-07-03 17:43:48