我在MySQL的db表中有一些國家的不同語言名,表中可以支持utf8。 但SELECT * FROM countries ORDER BY 'name_czech'
總是排序英文alphabatically訂購在外語字段中使用ORDER BY子句
我的問題是,我們怎麼能排序外語場記錄?
我在MySQL的db表中有一些國家的不同語言名,表中可以支持utf8。 但SELECT * FROM countries ORDER BY 'name_czech'
總是排序英文alphabatically訂購在外語字段中使用ORDER BY子句
我的問題是,我們怎麼能排序外語場記錄?
也許你想使用反引號,而不是單引號
SELECT *
FROM countries
ORDER BY `name_czech`
或只是刪除它。 –
得到了它,我只是在字段名稱中刪除單個QUOT
select * from countries order by name_czech
感謝所有的朋友。
我不完全理解這個問題,或者你想達到什麼目的,但是我可以通過你提供的示例來猜測,除了默認的mysql排序之外沒有任何排序。爲了能夠按列排序,您希望使用反引號(`)字符。在某些情況下,「字符也是允許的,雖然我懷疑這是你所需要的。」
回到排序問題,如果列的名字意味着任何東西,那麼我想這些是捷克的名字。如果是utf8捷克語歸類,則按照該排序進行排序;如果不是,則可以使用ORDER BY name_czech COLLATE utf8_czech_ci
來強制進行排序,而不是您爲該列定義的排序如果列是utf8,你應該沒有更多的意外
基本上,這返回到更改列的排序規則,如果不是適當的(通過alter table),或者在查詢過程中更改排序規則
你可以給樣品記錄嗎? –
確定等一下請 –
也許你想用反引號代替單引號。 'ORDER BY name_czech'怎麼樣? –