作者cutekid (可爱小孩子)
看板Database
标题Re: [SQL ] 对应不同条件的SUM()
时间Thu Jan 24 14:01:36 2019
select Field1,
sum(
Field2 *
case when Field1 like 'Condition1' then val1
when Field1 like 'Condition2' then val2
end
)
from table
where Field1 like 'Codition1' or Field1 like 'Condition2'
group by Field1
※ 引述《licheer (Keep The Faith)》之铭言:
: 资料库名称:MSSQL
: Select Field1, SUM(Field2 * val) // val 变数
: From Table
: Where
: Field1 like 'Condition1'
: or
: Field1 like 'Condition2'
: Group by Field1
: Field0 Field1 Field2 val1 val2
: ---------- ----------- ---------
: Condition1 a 5 10
: Condition1 b 10 10
: Condition2 b 12 20
: 要累计出 a 和 b 的总数
: a = 5 * 10
: b = 10 * 10 + 12 * 20
: Q1. val 是带入的变数,如果 Condition1 和 Condition2 都带入相同的数值
: 上面的写法可用
: Q2. 若 Condition1 和 Condition2 要各自带入 val1 和 val2 去和 Field2 相乘
: 要怎麽修改呢?
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.232.34.93
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1548309698.A.B7A.html
1F:推 licheer: 可以了,谢谢,不过有碰到困难了,有加新条件 01/24 21:17
2F:→ licheer: 搞定了,非常谢谢 01/27 02:11