我目前正在使用这些sql语句。我的表的字段CPaymentType包含“Cash”或“Check”。我可以通过执行2条SQL语句来总结付款金额,如下所示。在这种情况下,用户甚至在执行2个sql语句或1个时不会注意到速度差异,但是,我不喜欢我的方式,我只想要1个sql语句。我如何将这些重构成CASE条件的1条语句?我无法弄清楚,因为在线示例导致1或0或布尔值。我不希望包含过期的支票付款。非常感谢你。带CASE条件和SUM的SELECT查询()
Select SUM(CAmount) as PaymentAmount
from TableOrderPayment
where CPaymentType='Cash' and CStatus='Active';
Select SUM(CAmount) as PaymentAmount
from TableOrderPayment
where CPaymentType='Check' and CDate<=SYSDATETIME() and CStatus='Active';
如果你不想在你的结果期票,你的第二查询似乎实现这一目标。你不喜欢它什么? –
是的,我已经达到了我想要的。但是,我不喜欢使用2个sql语句。我希望将这2个合并到CASE条件下的1条语句中:) –