Sql 在一个表中选择2个选项的输出

Sql 在一个表中选择2个选项的输出,sql,select,Sql,Select,我有两张这样的桌子: [people1]: |First Name*| Last Name*| | | | |Martin | Green | |Peter | Blue | [People 2]: |Name* | | | |Linda | |Jane Yellow| 我希望SQL命令的输出是: |Name | | | |Mar

我有两张这样的桌子:

[people1]:

|First Name*| Last Name*|
|           |           |
|Martin     | Green     |
|Peter      | Blue      |
[People 2]:

|Name*      |
|           |
|Linda      |
|Jane Yellow|
我希望SQL命令的输出是:

|Name           |
|               |
|Martin Green   |
|Peter Blue     |
|Linda          |
|Jane Yellow    |

我无法更改这两个表的结构。

了解数据库很有帮助——字符串连接不一致

对于SQL Server和MySQL:

SELECT p1.first_name +' '+ p1.last_name AS name
  FROM PEOPLE1 p1
UNION ALL
SELECT p2.name
  FROM PEOPLE2 p2
对于Oracle,PostgreSQL:

SELECT p1.first_name ||' '|| p1.last_name AS name
  FROM PEOPLE1 p1
UNION ALL
SELECT p2.name
  FROM PEOPLE2 p2
双管道现在是ANSI连接字符串的方法——如果启用了严格的ANSI,MySQL可能会支持它


UNION
运算符允许组合多个查询,并删除重复项
UNION ALL
不会删除重复项,而且速度更快。联合的所有查询中的列数必须相同,并且每个位置的数据类型都应该匹配。

了解数据库很有帮助——字符串连接不一致

对于SQL Server和MySQL:

SELECT p1.first_name +' '+ p1.last_name AS name
  FROM PEOPLE1 p1
UNION ALL
SELECT p2.name
  FROM PEOPLE2 p2
对于Oracle,PostgreSQL:

SELECT p1.first_name ||' '|| p1.last_name AS name
  FROM PEOPLE1 p1
UNION ALL
SELECT p2.name
  FROM PEOPLE2 p2
双管道现在是ANSI连接字符串的方法——如果启用了严格的ANSI,MySQL可能会支持它

UNION
运算符允许组合多个查询,并删除重复项
UNION ALL
不会删除重复项,而且速度更快。所有联合查询中的列数必须相同,并且每个位置的数据类型应匹配。

您可以使用运算符

SELECT concat(first_name,last_name) as name FROM table1
UNION
SELECT concat(first_name,last_name) FROM table2
您可以使用运算符

SELECT concat(first_name,last_name) as name FROM table1
UNION
SELECT concat(first_name,last_name) FROM table2