加一个判断取值区间不为0或空的最大值
时间: 2023-12-07 09:06:09 浏览: 37
你可以在 SQL 语句中增加一个判断条件,判断取值区间不为0或空的最大值是否存在,如果存在则使用该值作为区间价格。可以像下面这样修改 SQL 语句:
```
CREATE TABLE 订单统计原单号获取结算价格值 (
ID,
(CASE
WHEN 收费重量 != '' AND 收费重量 IS NOT NULL AND (重量第一计费区间价格 != 0 OR 重量第二计费区间价格 != 0 OR 重量第三计费区间价格 != 0 OR 重量第四计费区间价格 != 0) THEN
CASE
WHEN 收费重量 <= 重量第一计费区间值 THEN 重量第一计费区间价格
WHEN 收费重量 <= 重量第二计费区间值 THEN 重量第二计费区间价格
WHEN 收费重量 <= 重量第三计费区间值 THEN 重量第三计费区间价格
WHEN 收费重量 > 重量第三计费区间值 AND 重量第四计费区间价格 != 0 THEN 重量第四计费区间价格
ELSE NULL
END
ELSE NULL
END) as 区间价格
FROM 订单统计原单号获取结算价格
WHERE (重量第一计费区间价格 != 0 OR 重量第二计费区间价格 != 0 OR 重量第三计费区间价格 != 0 OR 重量第四计费区间价格 != 0) AND 收费重量 != '' AND 收费重量 IS NOT NULL;
```
这样修改后,当收费重量大于最大计费区间值且最大计费区间价格不为零时,会使用最大计费区间价格作为区间价格。