因爲我還不能發佈我的previous question的答案,所以我決定打開一個新帖子。爲了讓事情在該職位的代碼工作,我不得不到提示WITH (... , INDEX (IX_REQUESTID))
和WITH (... , INDEX (IX_REQUESTIDREF))
添加到表分別Request
和Options
。看來SQL Server無法找到自己使用哪個索引,因爲現在它正確地完成了這項工作。但現在的問題是其他......我附加條款ORDER BY Priority, DateEntered
並且即使沒有對RequestTable
上(Priority, DateEntered) INCLUDE (RequestID)
指數,QUERY2再次返回任何結果的聲明......有什麼可以不對這個時間呢?請幫助我,因爲這非常重要,我自己也找不到答案。通過多個聯接排序
Q
通過多個聯接排序
0
A
回答
1
可能有進一步的要求,我不知道,但是當我的代碼變得複雜到了一定程度,我通常袖手旁觀,問自己 - 我所能做的事情變得更簡單。
在這種情況下,你能不能運行只是請求表的查詢和存儲的值返回到一個tablevar?
您可能需要設置事務隔離級別Serializable接口,以獲得該行鎖定你的願望。不知道 - 但需要嘗試和沒有。
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
DECLARE @TempResults TABLE (RequestID int, Priority int, DateEntered DateTime)
INSERT INTO @TempResults (RequestId, Priority, DateEntered)
SELECT TOP 2 RequestId, Priority, DateEntered FROM Request WITH (ROWLOCK, UPDLOCK, READPAST)
ORDER BY Priority, DateEntered
鎖着行
現在tablevar和選項表之間的連接返回結果集您需要。
SELECT * FROM @TempResults Request INNER JOIN Options ON Request.RequestID = Options.RequestIDRef
我很抱歉如果這不是您的選擇。
相關問題
- 1. Thinking_sphinx通過關聯排序
- 2. 通過排序有多個值sortBy
- 3. 通過多個數組排序Tableview行
- 4. 通過mysql多個列排序
- 5. 通過多個ID排序MySQL查詢
- 6. 通過多列列排序
- 7. 通過多線程排序
- 8. 通過關聯有效記錄排序
- 9. 通過關聯模型的created_at排序
- 10. 通過關聯字段(OneToMany)排序
- 11. 通過多個左連接的日期排序
- 12. jQuery的可排序,排序多個項目通過
- 13. 如何通過內部聯接表排序
- 14. MySQL查詢:文件排序時內部聯接,通過
- 15. 如何通過同一個屬性爲多個父關聯進行排序?
- 16. ActiveRecord通過關聯多次連接
- 17. 通過兩個按查詢排序的聯合維護訂單
- 18. 試圖通過一個鍵排序PHP關聯數組
- 19. 通過升序和降序排序多個值
- 20. 通過聯繫人姓名對聯繫人進行排序
- 21. 排序合併聯接
- 22. 使用多個內部聯接和排序結果
- 23. 聯合多個類,排序公共接口
- 24. 通過SQL排序左連接另一個左連接
- 25. xsl通過點擊鏈接排序div
- 26. jQuery Tablesorter - 通過單擊鏈接排序
- 27. 通過多對多關聯記錄的計數對行進行排序
- 28. 通過多個屬性排序多維數組
- 29. 通過SQL進行多重排序
- 30. 通過多列對Slickgrid進行排序?