![](/img/trans.png)
[英]What is the more efficient T-SQL way to query a table with Hierarchical data type
[英]What is a productive / efficient way to query a table with repeating fields using T-SQL?
我有一個這樣的表(簡化):
Lender
Id (PK)
AgencyCode1
AgencyCode2
AgencyCode3...
AgencyCode20
Agency
AgencyCode
AgencyName
貸方表是來自視圖的非規范化數據,用於報告。 每個貸方在輸出中都需要一行,並且需要將代理商代碼加入代理商表中,以獲取每個代理商的顯示名稱。
我在每一行中尋找的結果輸出是:
LenderId, AgencyCode1, AgencyName1, ... AgencyCode20, AgencyName20
在這樣的情況下,如何在性能和(開發人員)生產率之間達到最佳平衡的模式?
--Edit,代理商代碼不是我最初指出的主鍵。
回應@Martin Smith的評論,取消樞紐,加入和樞紐可能是最高效,最明智的選擇-並且通過弄清如何取消樞紐和樞紐的復雜性,隨着時間的推移,您的開發人員將變得更加經驗豐富,因此工作效率更高。
或者,如果有20個並且總是20個非規范化列,則可以只寫出20個左外部聯接(假設Lender與20個代理商無關)。 這是丑陋的代碼,需要SQL處理20個連接...但是,如果Agency表很小(在這里我將其稱為8頁/ 1小范圍),那么整個處理時間可能會相對較短。 需要進行測試,以確定哪個執行效果最好。
關於開發人員的整體生產力,請跟蹤所有操作需要多長時間(包括發布到SO)。 完成后,匯總所有內容,並使用它來顯示開發人員不得不使用設計不良的表浪費了多少時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.