我需要按日期在postgresql数据库中对数据进行分组,并在日期

时间:2018-05-06 15:14:35

标签: sql postgresql

我需要按日期在postgresql数据库中对数据进行分组并在日期中使用。

以下是我数据库中的示例数据

| id | user_name |    date    | action |
----------------------------------------
| 1  |  user_1   | 2018-05-05 | start  |
| 2  |  user_1   | 2018-05-05 | stop   |
| 3  |  user_2   | 2018-05-05 | start  |
| 4  |  user_2   | 2018-05-05 | stop   |
| 5  |  user_1   | 2018-05-06 | start  |
| 6  |  user_1   | 2018-05-06 | start  |
| 7  |  user_1   | 2018-05-06 | stop   |
| 8  |  user_2   | 2018-05-06 | start  |
| 9  |  user_2   | 2018-05-06 | stop   |

如何创建sql,它给出了我的结果,如下面的示例表所示:

| user_name | 2018-05-05 | 2018-05-06 |
---------------------------------------
|   user_1  |     2      |     3      |
|   user_2  |     2      |     2      |

2018-05-05和2018-05-06栏显示有关此日期的使用量的信息。

1 个答案:

答案 0 :(得分:0)

这样做你真正想要的吗?

select user_name, 
       sum( (date = '2018-05-05')::int) as date_20180505,
       sum( (date = '2018-05-06')::int) as date_20180506
from t
group by user_name;