照合順序(collations )が違うためSQLのjoinで失敗。 これを機会に照合順序について調べてみる。 SQLSTATE[HY000]: General error: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '=' MySQLは文字コードとソート順を持っていて、ソート順の部分がCollationとよばれている。(文字コードの部分はCharacter Set) 比較するときには文字コードだけでなくてCollationが一致するかどうかを比較する(順序が合わないと比較できない)。 ので、JOINしようとするとエラーになる。 DB単位、テーブル単位、カラム単位で設定可能。 照合順序の意味 例えば cp932_japanese