Après avoir fait quelques jointures et des choses je table dans le format suivantProblème avec Mysql GROUP_CONCAT
name session_id status
abc 1 null
xyz 2 11
jack 2 10
zuck 1 10
paul 1 10
Je veux que mes résultats à être regroupés comme celui-ci
session_id name+status
1 abc:-1, zuck:10, paul:10
2 xyz:11, jack:11
Alors je MySql group_concat dans sql comme
SELECT sr.avail_id AS id,sr.student_id, sa1.punctuality_status as associate_punctuality_status, IF(
(sa.punctuality_status IS NULL),
(group_concat(u.firstname, ' ', u.lastname, ':', '-1'),
(group_concat(u.firstname, ' ', u.lastname, ':', sa.punctuality_status)
),
sr.tutor_id AS associate_id, FROM_UNIXTIME(sr.timestart) AS timestart,
sr.session_id AS session_id, sr.type AS session_type, p.name AS program_name,
m.name AS module_name, ms.name AS session_name, sr.status as session_status FROM mdl_session_requests AS sr
LEFT JOIN mdl_session_attendee AS sa ON (sr.student_id = sa.user_id AND sr.session_id = sa.session_id)
LEFT JOIN mdl_session_attendee AS sa1 ON (sr.tutor_id=sa1.user_id and sr.session_id=sa1.session_id)
INNER JOIN mdl_module_session ms ON ms.id = sr.course_id
INNER JOIN mdl_module m ON m.id = ms.module_id
INNER JOIN mdl_program p ON p.id = m.program_id
INNER JOIN mdl_user u ON u.id = sr.student_id
WHERE sr.tutor_id =438 group by avail_id order by sr.timestart desc
error = "# 1064 - Vous avez une erreur dans votre syntaxe SQL, consultez le manuel qui correspond à votre version de serveur MySQL pour la bonne syntaxe à utiliser près de 'AS id_associé, FROM_UNIXTIME (sr.timestart) AS timestart, sr.session_id AS' à la ligne 6 "
Quelque chose ne va pas avec ce sql?
* "Une erreur" *? Quelle erreur obtenez vous? –
Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'AS tutor_id' – user401445
Il semble que la clause "from" soit manquante. – MatTheCat