Sql my WHERE子句的问题:多条件问题

Sql my WHERE子句的问题:多条件问题,sql,Sql,大家好,我在WHERE语句中有点小问题。下面我需要确保用户有c.Options='TA',但也要确保它忽略(不包括)c.Options='PT'。。。下面是我目前的工作内容 c代表保险范围 谢谢你的帮助!我很感激 您需要为此逻辑进行聚合: select c.user from c group by c.user having sum(case when c.options = 'TA' then 1 else 0 end) > 0 and sum(case when c.op

大家好,我在WHERE语句中有点小问题。下面我需要确保用户有c.Options='TA',但也要确保它忽略(不包括)c.Options='PT'。。。下面是我目前的工作内容

c代表保险范围


谢谢你的帮助!我很感激

您需要为此逻辑进行聚合:

select c.user
from c
group by c.user
having sum(case when c.options = 'TA' then 1 else 0 end) > 0 and
       sum(case when c.options = 'PT' then 1 else 0 end) = 0

第一部分说有一个“TA”选项。第二个表示没有“PT”选项。

第二个过滤器不需要。如果Options='TA',那么第二个过滤器将永远不会为真。为什么您需要
条件,而第一个条件足以忽略某些内容?如果您不介意的话,“TA”和“PT”是什么?我需要排除看c。Options='PT',基本上,当我运行这个查询时,我没有得到我需要的东西,因为c.选项可以包括我想排除的'PT',查看这个…@MrCoDeXeR:您可以使用第一个过滤器自动筛选出任何包含PT的内容,因为您只查看值为'TA'的选项
select c.user
from c
group by c.user
having sum(case when c.options = 'TA' then 1 else 0 end) > 0 and
       sum(case when c.options = 'PT' then 1 else 0 end) = 0