将具有不同列名的2个表连接为1个表,而不重复


join 2 tables with different column names into 1 without repeating

usuarios
--------
nombre 
contactos
---------
nombre

我有一个插入页,我可以选择谁负责这项任务。它可以是客户(联系人)或注册员工(通常)。客户端也可以在以后的操作系统中注册,这样他们就可以登录了。

我需要显示在一个选择(进一步插入在数据库)的所有值的常用的。姓名和联系人。没有重复(如果客户端也注册了)。

我正在学习PHP和MYSQL。谢谢你!

这正是构建UNION查询的目的。在您的示例中,查询看起来像:

SELECT nombre FROM usuarios
UNION 
SELECT nombre FROM contactos

默认情况下,这将只返回两个表之间的唯一命中。它将以单列形式返回。

如果您不希望这些值是唯一的,您只需将其更改为:

SELECT nombre FROM usuarios
UNION ALL
SELECT nombre FROM contactos

现在MySQL将传递它在两个表中找到的每个nombre记录。