看板 Database 關於我們 聯絡資訊
資料庫名稱:MSSQL Select Field1, SUM(Field2 * val), SUM(Field3) // val 變數 From Table Where Field1 like 'Condition1' or Field1 like 'Condition2' Group by Field1 Field0 Field1 Field2 Field3 val1 val2 ---------- ------- ------- ------- Condition1 a 5 0 10 Condition1 a 5 1 10 Condition1 a 5 2 10 Condition1 b 10 1 10 Condition1 b 10 6 10 Condition2 b 12 1 20 要累計出 a 和 b 的總數, 並且不要因Field3而重複 a = (5 * 10 + 5 * 10 + 5 * 10) / 3 b = (10 * 10 + 10 * 10) / 2 + 12 * 20 Q1. val 是帶入的變數,如果 Condition1 和 Condition2 都帶入相同的數值 上面的寫法可用 Q2. 若 Condition1 和 Condition2 要各自帶入 val1 和 val2 去和 Field2 相乘 要怎麼修改呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.252.118.205 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1548262232.A.2DD.html ※ 編輯: licheer (111.252.118.205), 01/24/2019 00:50:59
evilove: 看不懂你要表達的 01/24 12:23
※ 編輯: licheer (111.252.118.205), 01/24/2019 12:34:32
licheer: 補充一些資料 01/24 12:34
※ 編輯: licheer (111.252.118.205), 01/24/2019 12:37:04 ※ 編輯: licheer (111.252.118.205), 01/24/2019 12:38:08 ※ 編輯: licheer (111.252.118.205), 01/24/2019 21:35:08
xdraculax: SUM(Field2 * IF(Field1='Condition1',val1,val2)) 01/24 21:31
xdraculax: 忽略我,沒注意到是 MSSQL 0.0 01/24 21:34
※ 編輯: licheer (111.252.118.205), 01/25/2019 00:58:52
licheer: 搞定了,非常謝謝 01/27 02:11