【发布时间】:2021-03-23 06:50:31
【问题描述】:
我有什么
查询:
SELECT u.firstname,u.lastname, u.institution as department, u.department as company, c.shortname,
to_char(to_timestamp(p.timecompleted)::date,'YYYY-MM-DD') AS completed
FROM mdl_course_completions AS p
JOIN mdl_course AS c ON p.course = c.id
JOIN mdl_user AS u ON p.userid = u.id
WHERE c.enablecompletion = 1 AND u.firstname is NOT NULL AND p.timecompleted is NOT NULL
ORDER BY u.firstname
结果:
firstname lastname department company course completed
u1 u1 x x c1 date
u1 u1 x x c2 date
我需要什么
我需要能够将课程传输到列。导致类似这样的事情:
firstname lastname department company c1 c2
u1 u1 x x date date
u2 u2 x x date date
我尝试过使用交叉表,但我对 SQL 的熟练程度不够。有人可以帮忙吗?
EDIT:课程数量在数百个,所以它需要是动态的。
(另外:英语不是我的母语,如有不明之处请见谅)。
【问题讨论】:
标签: sql postgresql pivot