2

以前は、Mysql バージョン 5.5.27 を次のクエリで使用していました。

 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 = ?

このクエリは、学生が StudentBatchTxn に存在するかどうかにかかわらず、適切に実行するために使用されます。

しかし今、mysql 5.6.12 にアップグレードしました。同じクエリで、すべての列が null の行が返されます。

助けてください?

4

2 に答える 2

2

以下のリンクが役立つはずです

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

于 2013-07-09T12:35:09.193 に答える
2

それは 5.5.27 で本当に機能しましたか?

  • INNER JOIN: 両方のテーブルに少なくとも 1 つの一致がある場合、すべての行を返します。

LEFT JOINのINNER JOINを変更できますか

  • LEFT JOIN: 左側のテーブルからすべての行を返し、右側のテーブルから一致した行を返します
于 2013-07-09T12:36:03.980 に答える