我一直在看视频,阅读我的教科书,看一些例子,但似乎没什么用。我几乎已经准备好放弃了,但我真的想弄清楚这一点,因为它看起来很简单。目标是基本上取两个结果并将它们加在一起,这样所有结果都会显示为多个列中的一个结果。
这是我的SQL到目前为止我要组合的两个SELECT语句的结果,
SELECT DISTINCT [dbo].[School].SchoolName,
[dbo].[Professor].LastName,
[dbo].[Professor].FirstName
FROM [dbo].[SchoolDean], [dbo].[School],[dbo].[DepartmentChair], [dbo].[Department], [dbo].[Professor]
WHERE ([dbo].[SchoolDean].ProfessorID = [dbo].[Professor].[ProfessorID] AND
[dbo].[School].SchoolID = [dbo].[SchoolDean].SchoolID)
SELECT DISTINCT
[dbo].[Department].DepartmentName,
[dbo].[Professor].LastName,
[dbo].[Professor].FirstName
FROM [dbo].[DepartmentChair], [dbo].[Department], [dbo].[Professor], [dbo].[SchoolDean], [dbo].[School]
WHERE [dbo].[DepartmentChair].ProfessorID = [dbo].[Professor].[ProfessorID]
AND
[dbo].[Department].DepartmentID = [dbo].[DepartmentChair].DepartmentID
第一个SELECT语句的输出如下:
SchoolName LastName FirstName
Education |Brown |Harold
Engineering |Yang |Kim
Fine Arts |Winsor |Deborah
Management |Smith |Nancy
Mathematics |MacNamara |Christine
Science |Santiago |Jose
这是我对第二个SELECT语句的结果:
DepartmentName LastName FirstName
Aerospace |Hastings |Timothy
Applied Mathematics|McDonald |Susan
Biology |Noble |Charles
Chemistry |Young |Margaret
Civil Engineering |Hohl |Patrick
Computer Science |MacNamara |Christine
Dance |Winsor |Stephen
Economics |Anthony |Todd
Elementary Education|Walker |Joanne
Marketing |Smith |Nancy
MSIS |Jones |Samuel
Music |Winsor |Deborah
Physics |Santiago |Jose
Special Education |Walker |Joanne
期望的结果看起来像这样,但是拥有与教授相关联的SchoolName。列和它的值被添加到它上面,我不介意空值:
DepartmentName LastName FirstName SchoolName LastName FirstName
Aerospace |Hastings |Timothy
Applied Mathematics|McDonald |Susan
Biology |Noble |Charles
Chemistry |Young |Margaret
Civil Engineering |Hohl |Patrick
Computer Science |MacNamara |Christine
Dance |Winsor |Stephen
Economics |Anthony |Todd
Elementary Education|Walker |Joanne
Marketing |Smith |Nancy
MSIS |Jones |Samuel
Music |Winsor |Deborah
Physics |Santiago |Jose
Special Education |Walker |Joanne
非常感谢任何帮助,建议或提示。
答案 0 :(得分:0)
使用UNION ALL:
Select Schoolname as DepartmentName ...
UNION ALL
Select DepartmentName ...