合并具有不同列数的两个SQL查询结果中的列

时间:2012-03-02 14:34:06

标签: sql

我有两个表,其中包含以下列:

ERD

现在我想要一个SQL查询,它给我一个输出如下: SQL output

我已经编写了一些SQL代码,但这不起作用,因为union运算符需要相同数量的相同类型的列。看看。

SELECT *
FROM
(SELECT User_tbl1.Username, User_tbl1.Surname, User_tbl1.Givename
FROM User_tbl1
UNION
SELECT User_tbl2.User_PK
FROM User_tbl2)

有人可以帮助我使我的SQL查询正常工作,这样如果记录位于表“User_tbl2”中它会输出姓氏和名字的连字符吗?

非常感谢!

1 个答案:

答案 0 :(得分:5)

简单如下:

SELECT User_tbl1.Username, User_tbl1.Surname, User_tbl1.Givename
FROM User_tbl1
UNION
SELECT User_tbl2.User_PK, '-', '-'
FROM User_tbl2