MySQL困难 - 平假名和片假名被视为相同

时间:2011-08-13 11:49:14

标签: mysql unicode

我试图在mysql数据库上获取ピース SELECT * FROM edict WHERE japanese ='ピース' 但是我得到了3个结果: ヒース ビーズ ピース

我尝试使用ぴーす作为查询,它也返回相同的结果。 SELECT * FROM edict WHERE japanese ='ぴーす'

我该如何解决这个问题?

谢谢

1 个答案:

答案 0 :(得分:4)

我不确定日文字母,但您可以使用BINARY比较:

WHERE BINARY japanese = 'ピース'

BINARY关键字将字符串转换为其二进制表示,因此您可以进行“精确”比较。

此外,如果该行为应该是japanese列的默认行为 - 您可以将其归类更改为_bin一个(这将是更有效的解决方案,而不仅仅是强制转换)