假設有一個SELECT FN1,FN2 FROM AA WHERE ....查詢結果
現在只要取此查詢結果的前一百筆資料
因為不能寫成SELECT TOP 100 * FROM (SELECT FN1,FN2 FROM AA WHERE ....) ===>語法不合
也不能寫成SELECT TOP 100 FN1,FN2 FROM AA WHERE ....===>因為這樣會回沒查詢出結果前,就已經篩選前100筆了
所以需先將查詢存成QUERYDEF,如下
1:SET QD=DB.CREATQUERYDEFS("QDN","SELECT FN1,FN2 FROM AA WHERE ....")
2:SELECT TOP 100 * FROM QDN
但是查詢存成QUERYDEF這方式速度太慢了,約花掉1秒,(同樣結果用select FN1,FN2 from....約只花0.0005秒)
有哪位高手肯指教,將TOP 與SELECT...這兩結果組合起來,該如何做才會快?

arrow
arrow
    全站熱搜

    vbqa 發表在 痞客邦 留言(1) 人氣()