【发布时间】:2017-03-08 10:25:50
【问题描述】:
我想在T-SQL中根据一列的内容进行计算,另一列的内容应该在分子或分母中
我有一张表格,内容如下:
+------------+----------+----+-------------------------+
| machine-nr | duration | ID | timestamp |
+------------+----------+----+-------------------------+
| 1108 | 47 | 11 | 2017-02-11 00:08:15.000 |
| 1112 | 195 | 2 | 2017-02-11 00:13:13.000 |
| 1108 | 339 | 7 | 2017-02-11 00:13:54.000 |
| 1108 | 19 | 2 | 2017-02-11 00:13:54.000 |
| 1112 | 20 | 11 | 2017-02-11 00:13:33.000 |
+------------+----------+----+-------------------------+
现在我想做这样的计算
ID 为 11 的每个持续时间都应包含在被除数中,ID 为 11、2 和 7 的所有持续时间的总和应包含在除数中。
类似的东西(我知道那样不行):
SUM(duration if ID = 11) / SUM(duration if ID =11) + SUM(duration if ID = 2) + SUM(Duration if ID = 7)
group by machine-nr
我希望你明白我的意思。
【问题讨论】:
-
tsql不是mysql...那为什么两个标签?