在MySQL中使用左联接组合两个表
我有两张桌子 表1在MySQL中使用左联接组合两个表,mysql,Mysql,我有两张桌子 表1 +-------+-------+ | NAME | PRICE | +-------+-------+ | ITEM1 | 100 | +-------+-------+ | ITEM2 | 200 | +-------+-------+ | ITEM3 | 300 | +-------+-------+ 表2重复项目1和项目2 +-------+--------+---------+ | NAME | SUFFIX | CODE |
+-------+-------+
| NAME | PRICE |
+-------+-------+
| ITEM1 | 100 |
+-------+-------+
| ITEM2 | 200 |
+-------+-------+
| ITEM3 | 300 |
+-------+-------+
表2重复项目1和项目2
+-------+--------+---------+
| NAME | SUFFIX | CODE |
+-------+--------+---------+
| ITEM1 | 1 | ITEM1_1 |
+-------+--------+---------+
| ITEM1 | 2 | ITEM1_2 |
+-------+--------+---------+
| ITEM2 | 1 | ITEM2_1 |
+-------+--------+---------+
如何使用mySQL实现这个结果
+-------+-------+----------+
| NAME | PRICE | NAME2 |
+-------+-------+----------+
| ITEM1 | 100 | ITEM1 |
+-------+-------+----------+
| ITEM2 | 200 | ITEM2 |
+-------+-------+----------+
| ITEM3 | 300 | NULL |
+-------+-------+----------+
我想从表1中获取不在表2中的元素。在本例中,我想要获取的元素是ITEM3。我可以用LEFT JOIN执行此操作吗?要么您提供了错误的结果集,要么您编写了其他内容。您需要表1中的所有内容,并且只需要表2中不存在的内容??
select * from table1 t1
left outer join table2 t2 on t1.name = t2.name
where t2.name is null
Select * from table1 s Left join table2 as t on s.NAME=t.NAME where t.NAME IS NULL