希望基于特定条件的所有字段

时间:2018-10-25 18:08:41

标签: where-clause

我试图寻找解决我所面临问题的方法,但是没有找到与我试图做的事情类似的事情。我假设CASE语句可能是我想要的解决方案的一部分。

我正在尝试获取所有具有以下条件的销售订单:

  • 状态=新建
  • 保险级别<> 2
  • 如果工资百分比<100,我只需要1级保险

我还希望所有其他保险级别,只要订单上的状态为“新”即可。

我的WHERE子句当前如下所示:

WHERE SO.Status = 'New'
AND SO.InsuranceLevel <> '2'
AND (SO.InsuranceLevel = '1' AND SO.PayPercentage < 100)

但是,当我运行上面的代码时,它只为我提供保险级别1,其支付百分比<100。它不包括任何其他级别。我确实尝试将代码更改为此:

WHERE SO.Status = 'New'
AND SO.InsuranceLevel <> '2'
OR (SO.InsuranceLevel = '1' AND SO.PayPercentage < 100)

但是它仍然给我错误的结果。

对此有任何帮助!

此外,我正在使用SQL Server 2016

0 个答案:

没有答案