leetcode 183. Customers Who Never Order

来源:互联网 发布:宏观审慎管理知乎 编辑:程序博客网 时间:2024/06/05 11:00

183. Customers Who Never Order
1 建表

create table Customers(    Id int not null auto_increment,    Name varchar(20) default null,    primary key (Id))create table Orders (    Id int not null auto_increment,    CustomerId int default 0,    primary key (Id))insert into Customers(Id, Name) values ( 1, 'Joe');insert into Customers(Id, Name) values ( 2, 'Henry');insert into Customers(Id, Name) values ( 3, 'Sam');insert into Customers(Id, Name) values ( 4, 'Max');insert into Orders(Id, CustomerId) values (1, 3);insert into Orders(Id, CustomerId) values (2, 1);select * from Customers;select * from Orders;

解答:

select A.Name as Customers  from Customers A where A.id not in (select CustomerId from Orders B)

在下面左连接基础上选择需要的。

select * from Customers A
left join Orders B on A.Id = B.CustomerId

select A.Name as Customers from Customers Aleft join Orders B on A.Id = B.CustomerIdwhere B.CustomerId is null;SELECT A.Name as Customersfrom Customers AWHERE NOT EXISTS (SELECT 1 FROM Orders B WHERE A.Id = B.CustomerId)
原创粉丝点击