Les cuento que en mi trabajo (un colegio) hace tiempo se instaló Claroline 1.7.0 y sobre él se comenzó a desarrollar otros módulos que tienen que ver con la gestión del colegio más que con el trabajo en sala (Claroline es una plataforma de aprendizaje a distancia).
El problema comienza cuando nos falla el servidor y armamos otro nuevo, pero este con PHP5 a diferencia del anterior que tenía PHP4. También actualizamos las versiones de MySQL, pero en este momento no podría poner las versiones.
Bueno, el resultado fue que algunas partes de claroline dejaron de funcionar, y buscando y buscando me tenido que hacer algunas modificaciones en las consultas, más que nada cambios de orden, y han funcionado, pero hay una consulta que me está haciendo la vida imposible y no puedo entender por qué MySQL me dice que está mal.
La consulta es la siguiente:
Código:
SELECT `U`.`user_id` AS `authId`,
CONCAT(`U`.`nom`, ' ', `U`.`prenom`) AS `name`,
COUNT(`S`.`id`) AS `submissionCount`,
`S`.`title`,
MIN(`S`.`creation_date`)
FROM `AcaDB`.`user` as `U`,
`AcaDB`.`cours_user` as `CU`
LEFT JOIN `No2008287`.`wrk_submission` AS `S` ON `S`.`user_id` = `U`.`user_id`
AND ( `S`.`assignment_id` = 1 OR `S`.`assignment_id` IS NULL )
AND `S`.`original_id` IS NULL WHERE `U`.`user_id` = `CU`.`user_id`
AND `CU`.`code_cours` = '2008287'
GROUP BY `U`.`user_id`
ORDER BY `CU`.`statut` ASC, `CU`.`tutor` DESC, `U`.`nom` ASC, `U`.`prenom` ASC
Y el error que me da es el siguiente:
Código:
#1054 - Unknown column 'U.user_id' in 'on clause'
Como si la columna no existiera, pero si existe. La estructura de la tabla que se supone da el conflicto es la siguiente:
Código:
user_id int(11)
nom varchar(60)
prenom varchar(60)
username varchar(20)
password varchar(50)
authSource varchar(50)
email varchar(100)
statut tinyint(4)
vida tinyint(4)
officialCode varchar(40)
phoneNumber varchar(30)
pictureUri varchar(250)
creatorId int(11)
dir varchar(255)
maildir varchar(255)
¿Alguien me podría decir qué es lo que está mal en esa consulta? Porque en el otro servidor funcionaba sin problemas, pero acá no.
Me despido agradeciendo de antemano cualquier ayuda que puedan prestarme.