SQL查询显示购买苹果而不是土豆的客户

  • 本文关键字:客户 显示 查询 苹果 SQL sql
  • 更新时间 :
  • 英文 :


不知道如何解释这个…

我有一个类似的表,但我已经简化了如下:

我有一份给不同客户的货物表。有些人只买了苹果,有些人买了苹果和土豆。

我想要一个SQL查询只返回客户"要计费";=是的,而且顾客没有买任何蔬菜。

例如,如果表格是这样的:

<表类> 项目 名称 组 To_be_billed CustomerNo。 tbody><<tr>2000苹果水果对12000苹果水果没有22000苹果水果没有32000苹果水果对42000苹果水果对54000土豆蔬菜没有24000土豆蔬菜没有4

您可以创建一个CTE来检查需要忽略的CustomerNo.s,然后使用not exists:

with bought_veg as
(
select "CustomerNo."
from tbl
where tbl."Group" like 'Vegetable'
)
select tbl.*
from tbl
where not exists (select 1 from bought_veg where tbl."CustomerNo." = bought_veg."CustomerNo.")
and tbl.To_be_billed = 'Yes'

不带CTE的示例:

select tbl.*
from tbl
where not exists (select "CustomerNo." from tbl t2 where tbl.[CustomerNo.] = t2.[CustomerNo.] and "Group" like 'Vegetable')
and tbl.To_be_billed = 'Yes'

最新更新