SQL联接多个字段

时间:2015-10-06 16:11:58

标签: sql-server join left-join

我有两张桌子,我正在使用

第一个有6个可能的字段lt_org_data genre1genre2 ... genre6每条记录都存储一个与他们选择的流派相对应的整数值,每个组织最多可以选择6个流派字段。

第二个表ltr_genre是一个带有ID和描述的参考表。

我需要编写一个提取数据的过程,但会在lt_org_data中显示所有其他数据,但会将IDs替换为descriptions。 (它们也可以是空字段,因为组织最多可以选择6但必须为1,因此其他5可以为空)。

我有一系列左外连接,但这似乎效率低下。

select  distinct *
From    lt_org_data a
left outer join ltr_genre b on a.genre1 = b.id
left outer join ltr_genre c on a.genre2 = c.id
left outer join ltr_genre d on a.genre3 = d.id
left outer join ltr_genre e on a.genre4 = e.id
left outer join ltr_genre f on a.genre5 = f.id
left outer join ltr_genre g on a.genre6 = g.id

有没有人有更好的方法对此进行编码 - 这样我们就可以更快更有效地进行编码。

谢谢。

0 个答案:

没有答案