2014-03-12 71 views
0

之間的差異現在我與瑞典地理數據 工作在瑞典有兩個不同的地方:哈博和哈勃unicode字符串:哈博和哈勃

如果運行查詢像SELECT * FROM g2_se_raw_zip WHERE province EQUALS 'Håbo'SELECT * FROM g2_se_raw_zip WHERE province='Håbo'它給了我Habo了。

我有GROUP BY及其他查詢

爲什麼它是這樣工作的,以及如何解決它同樣的問題?

附加信息: character_set_client字符UTF8, 是character_set_connection UTF8, character_set_database UTF8, character_set_filesystem二進制, character_set_results UTF8, 被character_set_server UTF8, character_set_system UTF8,

回答

0

這是一個整理的問題。瑞典語字典將O型圈和O字母視爲字母表中的不同字母,而國際整理則將它們視爲同一字母的不同變體。

這些查詢應該爲你做。

SELECT * 
    FROM g2_se_raw_zip 
WHERE province COLLATE utf8_swedish_ci EQUALS 'Håbo' 


SELECT * 
    FROM g2_se_raw_zip 
WHERE province COLLATE utf8_swedish_ci = 'Håbo' 

爲了提高索引性能,您可能希望將包含瑞典地名的數據庫中列的排序規則設置更改爲瑞典排序規則。但是,如果您正在開發泛歐洲應用程序,則可能希望讓用戶在用戶個人資料中告訴您自己的國家語言,以便您可以以符合其期望的方式進行搜索。