SQL具有来自不同表的单个列显示值

时间:2012-06-15 15:02:31

标签: sql sql-server sql-server-2008

我需要一些帮助。我正在尝试在查询中显示一个名为SubmissionStatus的字段。但是我需要从多个表中选择它。例如......

我有:

Table0

Table1.SubmissionStatus Table2.SubmissionStatus Table3.SubmissionStatus (这三个表都有一个外键,可以将它们与Table0相关联)

我能做到: SELECT Table1.SubmissionStatus,Table2.SubmissionStatus,Table3.SubmissionStatus 来自Table0

但那不会给我任何东西

我需要这样的东西: SELECT SubmissionStatus FROM Table0(作为一列)

请帮忙吗?

1 个答案:

答案 0 :(得分:3)

我建议使用联盟,如下:

SELECT T1.SubmissionStatus 
FROM Table1 T1
JOIN Table0 T0 ON T1.primaryKey = T0.foreignKey
UNION
SELECT T2.SubmissionStatus 
FROM Table1 T2
JOIN Table0 T0 ON T2.primaryKey = T0.foreignKey
UNION
SELECT T3.SubmissionStatus 
FROM Table1 T3
JOIN Table0 T0 ON T3.primaryKey = T0.foreignKey

这会将所有内容放在一列中(想想一个类似于JOIN关键字的联合,但是用于连接行而不是列)。