2013-07-09 7 views
2

Plus tôt nous avons utilisé pour Majeures version 5.5.27 et avec la requête suivanteMysql 5.6.12 GROUP_CONCAT avec jointure interne Problème

SELECT S.StudentId, 
     SED.StudentEnrollmentDetailsId, 
     FirstName, MiddleName, LastName, Address, PermanentAddress, 
     GROUP_CONCAT(B.BatchName ORDER BY B.BatchId,B.IsVirtualBatch DESC) AS AllBatch 
FROM Student S 
INNER JOIN StudentEnrollmentDetails SED ON SED.StudentId = S.StudentId 
INNER JOIN StudentBatchTxn SBT ON SBT.StudentId = S.StudentId 
WHERE SED.StudentId = ? 
AND SED.StudentEnrollmentDetailsId = ? AND S.CompanyId = ? 

Cette utilisation de requête pour fonctionner correctement si l'étudiant est présent dans StudentBatchTxn ou non.

Mais maintenant nous avons mis à jour vers mysql 5.6.12. La même requête renvoie les lignes avec toutes les colonnes comme nulles.

Aidez s'il vous plaît?

Répondre

2

Le lien ci-dessous devrait être utile

http://dev.mysql.com/doc/refman/5.6/en/bugs.html

+0

@Amar ou user2298894 pourriez-vous s'il vous plaît préciser quelle partie de ce lien est pertinente à la question n. S'il vous plaît citer la partie du contenu qui explique ce problème (vous pouvez [modifier] (http://stackoverflow.com/posts/17548303/edit) la réponse). (Les réponses par lien seulement sont fortement déconseillées) – Rik

2

Est-ce que le travail vraiment 5.5.27?

  • INNER JOIN: Retourne toutes les lignes quand il y a au moins un match dans les deux tables

Pouvez-vous changer le INNER JOIN de dans LEFT JOIN de

  • LEFT JOIN: Renvoyer toutes les lignes de la table de gauche, et les lignes appariées de la table de droite
+0

Cela a fonctionné, même si je suis étonné. Maintenant, pour changer tant de production va être très lourde tâche et beaucoup de temps. – Amar

+0

Peut-être que l'ancienne version a supprimé le 'INNER JOIN StudentBatchTxn' parce que vous n'avez pas de champs dans le select. Mais selon la norme SQL, INNER JOIN ne devrait aboutir qu'à des enregistrements avec des entrées dans les deux tables. (donc c'est corrigé dans la dernière version :) – Rik

+0

Thanx @Rik pour votre aide – Amar