首页 > 解决方案 > NULL 或零金额的合并等价物

问题描述

为 null 或 0amountB的两个测试用例选择最简单的方法是什么?amountA

DECLARE @amountA float;
DECLARE @amountB float = 3.33;
select coalesce(@amountA, @amountB)

SET @amountA  = 0.00;
select coalesce(@amountA, @amountB)

标签: sqlsql-servertsql

解决方案


对于这种情况,我会使用CASE

select case when @amountA is null or @amountA = 0 then @amountB else @amountA end

推荐阅读