非法的排序规则混合-MySQL假表

时间:2018-11-06 16:17:53

标签: mysql sql

我通过以下方式创建了假表:

SELECT 'B' a_name UNION ALL  
SELECT 'A' a_name

并尝试加入其他表,但我看到错误:

  

排序规则的非法组合(latin1_swedish_ci隐式)和   (utf8_general_ci强制)

我不是管理员,所以我无法更新表排序规则,

有没有解决此问题的方法?

1 个答案:

答案 0 :(得分:0)

您的其他(实际)表似乎正在使用utf8_general_ci;而您的数据库连接/服务器配置设置为latin1_swedish_ci。也可以是其他方式。

尽管如此,我们可以使用CONVERT()函数将“假表”更改为使用utf8(如果另一个(实际)表使用utf8)。

SELECT CONVERT('B' USING utf8) AS a_name UNION ALL  
SELECT CONVERT('A' USING utf8) AS a_name