我正在運行以下查詢很多小時,做了各種更改,但想知道爲什麼DETAIL Query沒有返回任何結果。對於其他連接(FIRSTCONN,SECONDCONN,FOURTHCONN),我也有類似的疑問,它們運行得非常好,並在輸出中顯示期望的日期範圍。誰能弄清楚可能是什麼原因?以下cfquery結果讓我瘋狂
<cfquery datasource = "XX.XX.X.XX" name="master">
SELECT STR_TO_DATE(date_format(Timedetail,'%m-%d-%Y'),'%m-%d-%Y') as THIRDCONN,count(Timedetail) as THIRDOCCURANCES ,EVENTS
FROM MyDatabase
WHERE EVENTS = "THIRD"
GROUP BY THIRDCONN;
</cfquery>
DUMP FOR THIRD MASTER <cfdump var = "#master#">
<cfquery dbtype="query" name="detail">
SELECT *
FROM master
WHERE THIRDCONN >= <cfqueryparam value="#form.startdate#" cfsqltype="cf_sql_date">
AND THIRDCONN < <cfqueryparam value="#form.enddate#" cfsqltype="cf_sql_date">;
</cfquery>
DUMP FOR THIRD DETAIL <cfdump var = "#detail#">
P.S.就像測試一樣,我在詳細查詢中運行了「SELECT * from master」,我得到了預期的主查詢和詳細查詢的相同輸出,但是當我在詳細查詢中提到日期參數時,它會停止顯示輸出。但是,其他連接查詢(FIRSTCONN,SECONDCONN,FOURTHCONN等)的情況不是這樣的
是否有任何其他方式可以運行此查詢或我所做的任何錯誤?
DUMP第三MASTER
THIRDCONN THIRDOCCURANCES EVENTS
1 {ts '2013-06-06 00:00:00'} 10810 THIRD
2 {ts '2013-06-07 00:00:00'} 8076 THIRD
3 {ts '2013-06-10 00:00:00'} 25043 THIRD
4 {ts '2013-06-11 00:00:00'} 24754 THIRD
5 {ts '2013-06-12 00:00:00'} 14587 THIRD
6 {ts '2013-06-13 00:00:00'} 24828 THIRD
7 {ts '2013-06-14 00:00:00'} 23987 THIRD
8 {ts '2013-06-15 00:00:00'} 28027 THIRD
9 {ts '2013-06-16 00:00:00'} 25190 THIRD
10 {ts '2013-06-17 00:00:00'} 27255 THIRD
11 {ts '2013-06-18 00:00:00'} 22227 THIRD
12 {ts '2013-06-19 00:00:00'} 15951 THIRD
13 {ts '2013-06-20 00:00:00'} 21120 THIRD
14 {ts '2013-06-21 00:00:00'} 24214 THIRD
15 {ts '2013-06-22 00:00:00'} 22466 THIRD
16 {ts '2013-06-23 00:00:00'} 19881 THIRD
17 {ts '2013-06-24 00:00:00'} 23479 THIRD
18 {ts '2013-06-25 00:00:00'} 7879 THIRD
轉儲第三細節
THIRDCONN THIRDOCCURANCES活動
你確定你得到了#form.startdate#和#form.enddate#有效值;你的數據庫中可能會有NULLS導致該問題? –
是的,我使用' '測試了它。你的意思是NULL可以存在於哪裏? –
Tan
這聽起來像完全相同[問題從你的其他線程](http://stackoverflow.com/a/17684464/104223)。 **不要混合數據類型**。如果你想執行一個日期比較,你的數據庫查詢必須返回一個**日期對象**,而不是一個字符串(這是'date_format'返回的內容)。即使用'STR_TO_DATE'來返回一個日期對象。 – Leigh