我在 PostgreSQL 中有一个这样的查询:
select count(id_student) students, date_beginning_course from
data.sessions_courses
left join my_schema.students on id_session_course=id_sesion
where course_name='First course'
group by date_beginning_course
Run Code Online (Sandbox Code Playgroud)
我通过此查询获得的是在多个日期参加“第一门课程”课程的学生人数,例如:
Students Date_beginning_course
____________________________________
5 2019-06-26
1 2019-06-28
5 2019-06-30
6 2019-07-01
2 2019-07-02
Run Code Online (Sandbox Code Playgroud)
我想用缺失的日期值填充此表,并且对于每个缺失的值,在“学生”列中指定“0”,因为该日期没有学生。例子:
Students Date_beginning_course
____________________________________
5 2019-06-26
0 2019-06-27 <--new row
1 2019-06-28
0 2019-06-29 <--new row
5 2019-06-30
6 2019-07-01
2 2019-07-02
Run Code Online (Sandbox Code Playgroud)
你可以帮帮我吗?谢谢!:)
我想获得的是每个类别第一次出现非空值。如果只有空值,则该类别的结果应为 NULL。
对于这样的表:
Category Value
1 NULL
1 1922
2 23
2 99
3 NULL
3 NULL
Run Code Online (Sandbox Code Playgroud)
结果应该是
Category Value
1 1922
2 23
3 NULL
Run Code Online (Sandbox Code Playgroud)
如何使用 postgres 实现这一点?