如果它们具有从 table 1 到 table 2 的相同数据,则显示数据的查询
Query that displays the data if they have the same data from table 1 to table 2
我的目标是在我的目标输出中用相同的数据显示名字和姓氏。我在下面提供了一个table供您参考。
Table 1: tbl_user
first_name
last_name
roger
paul
law
marshall
steve
fox
nina
williams
sakura
flower
Table 2: tbl_account
first_name
last_name
roger
paul
law
marshall
steve
fox
nina
kicks
sakura
hana
我的目标输出:
first_name
last_name
roger
paul
law
marshall
steve
fox
正如我们在目标输出中看到的,没有 "Nina williams"
和 "sakura flower"
。这是因为,在第一个 table 和第二个 table 中,他们的名字和姓氏不匹配。
知道如何实现我的目标吗?非常感谢。
这里应该可以使用简单的内部联接:
SELECT u.first_name, u.last_name
FROM tbl_user u
INNER JOIN tbl_account a
ON a.first_name = u.first_name AND
a.last_name = u.last_name;
另一种方式,使用联合:
SELECT first_name, last_name
FROM
(
SELECT first_name, last_name FROM tbl_user
UNION ALL
SELECT first_name, last_name FROM tbl_account
) t
GROUP BY first_name, last_name
HAVING COUNT(*) > 1;
我的目标是在我的目标输出中用相同的数据显示名字和姓氏。我在下面提供了一个table供您参考。
Table 1: tbl_user
first_name | last_name |
---|---|
roger | paul |
law | marshall |
steve | fox |
nina | williams |
sakura | flower |
Table 2: tbl_account
first_name | last_name |
---|---|
roger | paul |
law | marshall |
steve | fox |
nina | kicks |
sakura | hana |
我的目标输出:
first_name | last_name |
---|---|
roger | paul |
law | marshall |
steve | fox |
正如我们在目标输出中看到的,没有 "Nina williams"
和 "sakura flower"
。这是因为,在第一个 table 和第二个 table 中,他们的名字和姓氏不匹配。
知道如何实现我的目标吗?非常感谢。
这里应该可以使用简单的内部联接:
SELECT u.first_name, u.last_name
FROM tbl_user u
INNER JOIN tbl_account a
ON a.first_name = u.first_name AND
a.last_name = u.last_name;
另一种方式,使用联合:
SELECT first_name, last_name
FROM
(
SELECT first_name, last_name FROM tbl_user
UNION ALL
SELECT first_name, last_name FROM tbl_account
) t
GROUP BY first_name, last_name
HAVING COUNT(*) > 1;