Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,IMPLICIT) for operation '='
今天写了一个简单的sql,报了如上错误。一度让我怀疑人生,这么简单的sql都写不好吗?
一经查证,原来是进行比较的两个字段的字符集编码不同导致。
解决办法:
1:修改其中的一个字符集,对于表结构进行更改。
2: 在其中的一个列后面加上 COLLATE utf8mb4_unicode_ci/utf8mb4_general_ci 进行指定。
注意:这种情况是不应该出现的,在进行表结构设计更改时,字符集应该统一。