嗨我有一个数据库,我试着计算一下我可以多个值,并从中计算。
----------------------
|id | name|parts|date|
---------------------
|1 |abc | 2 |2016|
---------------------
|1 |bcd | 3 |2017|
---------------------
|1 |cde | -5 |2018|
----------------------
我需要的是:
-----------
|id |count|
-----------
|1 | 6 |
-----------
正如我所说,如果我有一个minu( - )那么1是无关紧数,如果是-3或-5是eqal与1; 2 + 3 + 1 = 6;
答案 0 :(得分:1)
尝试此查询:
SELECT id, SUM(IF(parts < 0, 1, parts)) AS `count`
FROM table
GROUP BY id
答案 1 :(得分:0)
SELECT `id`,
SUM(CASE WHEN (`parts` < 0) THEN 1 ELSE `parts` END) AS Count
FROM `TableName`
GROUP BY `id`
SUM()
函数返回数字列的总和。
CASE
函数允许您评估条件并在满足第一个条件时返回值(如IF-THEN-ELSE
语句)
答案 2 :(得分:0)
多次阅读之后,我认为这就是你想要实现的目标。
SELECT
id,
SUM(IF(parts < 0, 1, parts)) AS count
FROM
products
GROUP BY
id