一個主表,會關聯很多子表,主表只存放外聯部的主鍵ID,現在這些欄位需要關聯查詢內容,并且顯示出來。
一般為了方便會這樣查詢,例如:
SELECT 主表.COLUM_A
,主表.COLUM_B
,(SELECT TOP 1 關聯表1.COLUM_A FROM 關聯表1 WHERE 主鍵=外鍵 ...) AS 新欄位1
,(SELECT TOP 1 關聯表2.COLUM_A FROM 關聯表2 WHERE 主鍵=外鍵 ...) AS 新欄位2
,(SELECT TOP 1 關聯表3.COLUM_A FROM 關聯表2 WHERE 主鍵=外鍵 ...) AS 新欄位3
...
FROM 主表
....
這樣查詢發現速度很慢,有什么其他替換或優化方法?
uj5u.com熱心網友回復:
有沒有這樣查詢顯示的SELECT 主表.COLUM_A
,主表.COLUM_B
,(SELECT TOP 1 關聯表1.COLUM_A,關聯表1.COLUM_B,.... FROM 關聯表1 WHERE 主鍵=外鍵 ...)
FROM 主表
uj5u.com熱心網友回復:
你可以在查詢分析器里使用“顯示估計的執行計劃”來分析一下,時間都花在了什么地方。經常會出現一種錯覺:我們認為應該優化的地方,反而不是應該做的。
uj5u.com熱心網友回復:
查詢條件欄位加索引轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/84964.html
標籤:疑難問題
上一篇:Fortran
