在 SQL Oracle SQL 开发人员中将不同表中的两列合并为一列
Combining two columns from separate tables into one in SQL Oracle SQL developer
所以,我正在尝试 运行 一个要求我将两个单独的 table 连接在一起的查询,但我需要将一些信息合并到一个列中,并标记它来自哪个 table。
像这样...
table_1 table_2
teacher_name student_name
Steve Jimmy
George Craig
Output:
NAME: Title:
Steve Teacher
George Teacher
Jimmy Student
Craig Student
这是我目前所拥有的...
SELECT x.first_name, x.last_name, y.first_name, y.last_name, x.city, y.city
FROM (SELECT i.first_name, i.last_name, z.city, z.zip
FROM instructor i JOIN
zipcode z
ON z.zip = i.zip
WHERE z.zip = 10025) x
LEFT OUTER JOIN
(SELECT s.first_name, s.last_name, z.city, z.zip
FROM student s JOIN zipcode z
ON s.zip = z.zip
WHERE z.zip = 10025) y
ON y.zip = x.zip
基本上,我需要做的就是将 x 和 y 查询中的名字和姓氏以及来自两者的城市合并到一个列中,然后创建一个列来标识是否这个人来自导师 table (x) 或学生 table (y)
更新:
所以我最终放弃了子查询和外连接,我得到了查询工作......这是我最终得到的代码。非常感谢!
SELECT i.first_name AS first_name, i.last_name AS last_name, 'Teacher' AS role
FROM instructor i JOIN zipcode z
ON i.zip = z.zip
WHERE z.zip = 10025
UNION ALL
SELECT s.first_name AS first_name, s.last_name AS last_name, 'Student' AS role
FROM student s JOIN zipcode z
ON s.zip = z.zip
WHERE z.zip = 10025
ORDER BY role, last_name, first_name;
SELECT teacher_name + teacher_last as Name, city, 'Teacher' as source
FROM TeacherTable
UNION ALL
SELECT student_name + student_last as Name, city, 'Student' as source
FROM StudentTable
所以,我正在尝试 运行 一个要求我将两个单独的 table 连接在一起的查询,但我需要将一些信息合并到一个列中,并标记它来自哪个 table。
像这样...
table_1 table_2
teacher_name student_name
Steve Jimmy
George Craig
Output:
NAME: Title:
Steve Teacher
George Teacher
Jimmy Student
Craig Student
这是我目前所拥有的...
SELECT x.first_name, x.last_name, y.first_name, y.last_name, x.city, y.city
FROM (SELECT i.first_name, i.last_name, z.city, z.zip
FROM instructor i JOIN
zipcode z
ON z.zip = i.zip
WHERE z.zip = 10025) x
LEFT OUTER JOIN
(SELECT s.first_name, s.last_name, z.city, z.zip
FROM student s JOIN zipcode z
ON s.zip = z.zip
WHERE z.zip = 10025) y
ON y.zip = x.zip
基本上,我需要做的就是将 x 和 y 查询中的名字和姓氏以及来自两者的城市合并到一个列中,然后创建一个列来标识是否这个人来自导师 table (x) 或学生 table (y)
更新:
所以我最终放弃了子查询和外连接,我得到了查询工作......这是我最终得到的代码。非常感谢!
SELECT i.first_name AS first_name, i.last_name AS last_name, 'Teacher' AS role
FROM instructor i JOIN zipcode z
ON i.zip = z.zip
WHERE z.zip = 10025
UNION ALL
SELECT s.first_name AS first_name, s.last_name AS last_name, 'Student' AS role
FROM student s JOIN zipcode z
ON s.zip = z.zip
WHERE z.zip = 10025
ORDER BY role, last_name, first_name;
SELECT teacher_name + teacher_last as Name, city, 'Teacher' as source
FROM TeacherTable
UNION ALL
SELECT student_name + student_last as Name, city, 'Student' as source
FROM StudentTable