SQL - 使用Case进行多次选择

时间:2018-05-15 14:24:27

标签: sql

+--------+---------+----------+----------+-------+------------+------------+
| F Name | L Name  | Event ID | Group ID | Hours | Event Type | Event Name |
+--------+---------+----------+----------+-------+------------+------------+
| Bill   | Johnson |        1 |          | 3     | Event      | Indirect   |
| Janet  | Jackson |          |        1 | 1     | Group      |            |
| Bill   | Johnson |          |        1 | 1     | Group      |            |
| Chris  | Margot  |        2 |          | 1.5   | Event      | Direct     |
| Janet  | Jackson |          |        1 | 1     | Group      |            |
+--------+---------+----------+----------+-------+------------+------------+

我有一张这样的桌子。如果事件类型不是组和直接,我需要计算小时列的总和。

如果事件类型是组,那么我需要总计几个小时,但每个人每组ID只需要一次。 (所以珍妮特会为她的小组服用1小时而不是2小时,因为他们拥有相同的小组ID。我得到了意想不到的结果。

我知道这将涉及自我加入。该表在查询的FROM部分中称为public.event_by_wkr event_by_wkr。我觉得这很困难,但可能不是。如果您需要更多信息,我会提供。

0 个答案:

没有答案