通过多个连接到同一个表来改进SQL Server查询

时间:2016-09-17 21:03:21

标签: sql sql-server join left-join

我需要帮助来提高SQL查询的性能。我有一个tblThings和tblTexts。 tblThings有大约10个TextID。我留下的查询加入这些表10次,这很慢。

以下是我的查询的简化版本:

SELECT th.ThingID, th.DescTextID, th.ColourTextID, tDesc.Text AS Desc, tCol.Text AS Colour
FROM tblThings th
LEFT JOIN tblTexts tDesc ON tDesc.TextID = th.DescTextID
LEFT JOIN tblTexts tCol ON tCol.TextID = th.ColourTextID
--and so on around 10 times

我很感激帮助。

1 个答案:

答案 0 :(得分:0)

查询没有任何问题。由于您必须在文本表中查找文本(可能出于国际化原因),因此您不得不编写查询。

当然,tblTexts(TextID)应该有一个索引。