繁体   English   中英

使用T-SQL用重复字段查询表的有效/有效方式是什么?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM