tmuras / moosh

Moosh
GNU General Public License v3.0
231 stars 176 forks source link

"moosh course-list -e yes" give an error with postgresql #490

Open pascal-my opened 3 months ago

pascal-my commented 3 months ago

Hi,

I try to execute "moosh course-list -e yes" and I got an error

Actual behaviour

/usr/local/bin/moosh course-list -e yes Default exception handler: Erreur de lecture de la base de données Debug: ERREUR: la colonne « modules » n'existe pas LINE 1: ...c.id=m.course WHERE '1'='1' GROUP BY c.id HAVING modules < ... ^ HINT: Peut-être que vous souhaitiez référencer la colonne « m.module ». SELECT c.id,c.category,COUNT(c.id) AS modules,c.shortname,c.fullname,c.visible FROM mdl_course c LEFT JOIN mdl_course_modules m ON c.id=m.course WHERE '1'='1' GROUP BY c.id HAVING modules < 2 [array ( )] Error code: dmlreadexception

Expected behaviour

Using column alias in a where clause doesn't work with PostGresql : https://dba.stackexchange.com/questions/225874/using-column-alias-in-a-where-clause-doesnt-work

This is working : SELECT c.id,c.category,COUNT(c.id) AS modules,c.shortname,c.fullname,c.visible FROM mdl_course c LEFT JOIN mdl_course_modules m ON c.id=m.course WHERE '1'='1' GROUP BY c.id HAVING COUNT(c.id) < 2

Steps to reproduce

Execute /usr/local/bin/moosh course-list -e yes and see the error

Pascal

pascal-my commented 3 months ago

Thank you ! I don't know if I have to close the issue by myself ?