2011-08-13 58 views
3

我試圖獲取ピースMySQL數據庫上 SELECT * FROM詔書WHERE日本= 'ピース' 但是我得到了3個結果分別是: ヒース ビーズ ピースMySQL的困難 - 平假名和片假名被視爲相同

我試圖使用ぴーす作爲查詢,它也返回相同的結果。 SELECT * FROM edict WHERE japanese ='ぴーす'

我該如何解決這個問題?

謝謝

回答

4

我不知道日本的字母,但你可以使用BINARY比較:

WHERE BINARY japanese = 'ピース' 

BINARY關鍵字蒙上字符串,其二進制的介紹,因此你可以使用「精確」的比較。

而且,如果該行爲應該是默認japanese列 - 你可以整理它改變_bin一個(這將是更有效的解決方案,而不僅僅是鑄造)

+0

它的作品!謝謝! – bbnn

+0

ピース和ぴーす都是音節(biisu)。有時日本人使用片假名來表達名稱或重點 - 所以他們往往是相同的詞和意義。我實際上已經認爲這是MySQL的一個非常有用的功能(當你意識到這一點的時候) - 但它對搜索確切的字符也很有用。 +1 :) – Mikaveli