Sql Server最有效的加入方式

Mar*_*ord 0 .net sql sql-server

我有一个大约有3000条记录的表,我需要将其导出到csv(通过.net Web应用程序)但是我还需要从大约10个其他表中提取信息(每个大约还有3000条记录),以便形成更多列,例如

Individual Table
Organisation Table
IndividualOrganisation Table

输出:Individual.Name,Organisation.Name

目前我正在使用存储的进程创建一个带有额外列的临时表(例如,一个用于Organisation.Name等...)然后从其他10个表中一个接一个地执行查询以将信息输入.这会导致超时时间过去即使我将时间延长到200,sql连接上的错误!

在我的存储过程中构造一个庞大的单个sql语句并执行它会更好吗?这些"加入"的10个表是以用户选择为条件的,存储过程当前具有ifs序列然后选择

E.J*_*nan 7

只有3000条记录,我认为除非您的服务器功能严重不足(或过度工作),否则几乎所有查询都可以正常运行.

你有适当的索引吗?这是我先检查的.