1083. Sales Analysis II 难度:简单

1、题目描述

Write an SQL query that reports the buyers who have bought S8 but not iPhone. Note that S8 and iPhone are products present in the Product table.
The query result format is in the following example:
Product table:

product_idproduct_nameunit_price
1S81000
2G4800
3iPhone1400

Sales table:

seller_idproduct_idbuyer_idsale_datequantityprice
1112019-01-2122000
1222019-02-171800
2132019-06-021800
3332019-05-1322800

Result table:

buyer_id
1

The buyer with id 1 bought an S8 but didn’t buy an iPhone. The buyer with id 3 bought both.

来源:力扣(LeetCode)

2、解题思路

1# 首先,增加一个子表,找出所有购买iphonebuyer_id

select buyer_id
from Product p left join Sales s
on p.product_id =s.product_id
where product_name='iphone'

2# 两表联查,条件是买了S8和,buyer_id不在上表范围

3、提交记录

select distinct buyer_id
from Product p left join Sales s
on p.product_id =s.product_id
where product_name='S8'
and buyer_id not in 

(select buyer_id
from Product p left join Sales s
on p.product_id =s.product_id
where product_name='iphone')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值