mysql - MySQL 显示截断和求和 NULL 值
问题描述
如果 Cost 列显示NULL我如何忽略此功能并简单地显示NULL?
目前,当我添加此功能时,它会忽略结果。我尝试定位 COALESCE 函数,但没有成功。
注意:如果没有这个 select 语句,它会显示所有条目,因此 JOINS 是正确的,并且结果是特定于这个函数的。
提前致谢!
TRUNCATE(SUM(Cost/2),3) AS CostPerPart
解决方案
请随时提供更多信息,但这可能取决于您的结构和数据。这依赖于使用IFNULL()
文档位于此处。
IFNULL
如果值不是则返回表达式,NULL
否则返回NULL
IFNULL(expr1,expr2)
如果 expr1 不为 NULL,则 IFNULL() 返回 expr1;否则返回 expr2。
CREATE TABLE Table1
(`id` int, `Cost` int)
;
INSERT INTO Table1
(`id`, `Cost`)
VALUES
(1, 2),
(2, 3),
(3, 4.5),
(4, 6),
(5, NULL),
(1, 2)
;
SELECT id
,IFNULL(TRUNCATE(SUM(Cost/2),3), NULL) AS CostPerPart
FROM Table1
GROUP BY id;
输出:
id CostPerPart
1 2
2 1.5
3 2.5
4 3
5 (null)
推荐阅读
- javascript - Fabric JS 将 Textbox 对象文本限制为仅包含一行文本
- rust - 从未装箱的切片创建 NDArray 的无复制方式?
- asp.net - Asp.Net Identity TwoFactorRememberBrowser Cookie 覆盖第二个用户登录
- formal-verification - 如果属性不满足,UPPAAL 不会显示跟踪
- ios - 为什么 Diffable Datasources 以不同的方式对待类和结构类型?
- leaflet - 将长坐标和纬度坐标划分为子坐标(较小的正方形)?
- r - 合并数据框并按组划分行
- java - 理解Java中的equals方法的麻烦
- spring-batch - Spring Cloud Data Flow UI - 删除平台属性
- r - 使用 broom 和 dplyr 合并数据框中的所有观测值的估计模型后进行预测