用于联合具有不同列数的多个表的SQL查询

时间:2013-11-07 16:14:24

标签: mysql sql sql-server union

我有几个表,前三行相同,其余不同(数字也一样)。我希望将所有表合并为一个,前三列原样,其余表连接成一个名为“description”的列。现在,我能够手动执行此操作,但我有很多表。可以使用while循环,变量?还是可行的?

1 个答案:

答案 0 :(得分:0)

听起来你想要一起加入桌子。在MySQL中,这看起来像:

select t1.col1, t1.col2, t1.col3,
       concat(t1.col4, t2.col4, t3.col4) as description
from t1 left outer join
     t2
     on t1.col1 = t2.col1 and t1.col2 = t2.col2 and t1.col3 = t2.col3 left outer join
     t3
     on t1.col1 = t3.col1 and t1.col2 = t3.col2 and t1.col3 = t3.col3