我有一個頁面,我正在運行一個初始SQL查詢來獲取主題列表,然後我遍歷這個查詢併爲從原始主題查詢返回的每條記錄運行兩個附加查詢(我碰巧在ColdFusion中這樣做,但不確定真的很重要)。這兩個附加查詢爲該特定主題執行COUNT,然後輸出結果(輸出主題名稱,然後輸出該主題的兩個計數)。我試圖提高此頁面的性能,並想知道我是否可以以某種方式將它合併到單個查詢中。合併一個COUNT查詢
初始查詢:
SELECT COUNT(test_ID) as priority_count FROM Test_Queue WHERE priority_flag = 1 AND subject_ID = #SubjectQuery.subject_ID# SELECT COUNT(test_ID) as locked_count FROM Test_Queue WHERE locked = 1 AND subject_ID = #SubjectQuery.subject_ID#
建議如何將這些可能會進行優化:
初始查詢的環路內SELECT subject_ID, subject_name FROM Subjects ORDER BY subject_name
查詢? DB是MS SQL 2008.謝謝。
你如何過濾基於subject_ID的Test_Queue,這裏沒有顯示。 – Deeksy 2009-11-16 23:45:44
在循環中的查詢中,WHERE子句是否包含subject_ID? – t3rse 2009-11-16 23:47:18
對不起,我刪除了一些無關信息,並且意外地將其取出。我編輯了上面的查詢。 – 2009-11-16 23:51:11