【问题标题】:MySQL difficulties - Hiragana and Katakana are treated as the sameMySQL 难点 - 平假名和片假名被视为相同
【发布时间】:2011-08-13 11:49:14
【问题描述】:

I tried to fetch ピース on mysql database SELECT * FROM edict WHERE japanese = 'ピース' However I got 3 results which are: ヒース ビーズ ピース

I tried to use ぴーす as the query and it also return the same result. SELECT * FROM edict WHERE japanese = 'ぴーす'

How can I solve this problem?

Thank you

【问题讨论】:

    标签: mysql unicode


    【解决方案1】:

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

    WHERE BINARY japanese = 'ピース'
    

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

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

    【讨论】:

    • ピース和ぴーす都是音节(biisu)。有时日语使用片假名来命名或强调 - 所以它们通常是相同的词和含义。我实际上认为这是 MySQL 的一个非常有用的特性(当你意识到它时)——但搜索确切的字符也很有用。 +1 :)
    猜你喜欢
    • 2017-05-26
    • 2012-06-08
    • 2020-04-08
    • 2018-04-26
    • 2011-06-20
    • 2013-01-30
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多