sql - 在 SQL 中使用 UNION 垂直连接表行

标签 sql union

我有 2 个表 Student 和 Staff,当我使用 UNION 将它们连接在一起时

SELECT STUNAME, STUGENDER,
   FROM STUDENT
   UNION
   SELECT STFNAME, STFGENDER
   FROM STAFF
   ORDER BY 1 ASC;

名称混合在输出中,有没有办法像这样垂直分隔它们,但仍然使用 UNION,我对此进行了分配,但仍然卡住了

STUNAME
Alvin
Jane
STFNAME
Lincoln
Kate

最佳答案

SELECT StuName as cName, StuGender as Gender, 'Student' as Status
   From Student
UNION
SELECT StfName as cName, StfGender as Gender, 'Staff' as Status
   From Staff

字段需要命名相同,状态别名字段将保存它们所属的分类。

关于sql - 在 SQL 中使用 UNION 垂直连接表行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36972209/

相关文章:

mysql - 如何选择符合链接表中所有条件的记录?

MySQL 只获取一列一次

sql - 合并两个表并添加数量

MySQL 创建 View ,该 View 是两个表的并集,其中一个表值带有前缀

MySQL UNION 查询,不同的 ID

SQL 服务器 : Can a query return results to multi-part searches in one step?

sql - Mysql:如何选择具有特定值的组?

sql - 选择...其中值类似于 '%...%'

mysql - 使用内连接更新查询 - 使用更新后的列值到同一表的另一列

sql - 如何仅对表的特定行进行分组