从SQL查询中过滤数据

在下表中,我需要从表中排除PathIsFeatureSupported记录,并返回其他记录。

ItemsSource

预期结果:

CategoryID=1002
fulex168 回答:从SQL查询中过滤数据

您可以将CASE表达式用作

SELECT *
FROM
(
  VALUES
  (1001,'MENS'),(1002,(1001,'WOMENS'),'KIDS'),'KIDS')
) T(Id,Gender)
WHERE CASE WHEN ID = 1002 AND Gender = 'KIDS' THEN 1 ELSE 0 END = 0;

Online Demo

,

我不建议在case子句中使用where表达式,因为这会影响优化器。

这很容易表示为布尔逻辑:

where not (CategoryID = 1002 and Gender = 'KIDS')

或:

where CategoryID <> 1002 or Gender <> 'KIDS'
本文链接:https://www.f2er.com/3152873.html

大家都在问