1. MySQL實現中文漢字拼音排序功能mysql漢字拼音排序
很多時候,在開發實現中文漢字拼音排序的功能的時候,我們會面臨著一個棘手的問題:拿MySQL來實現中文漢字拼音排序功能。 在MySQL資料庫中,一般有兩種方式可以實現中文漢字拼音排序功能: 一種是使用MySQL的欄位函數CONVERT(),另一種是使用中文索引欄位。
第一種方式:使用MySQL的欄位函數CONVERT()
在MySQL中,CONVERT函數可以用來轉換不同編碼格式中的文本內容,如下:
`SELECT CONVERT(name USING gbk) FROM table`
這段SQL查詢語句表示將table表中name欄位的內容轉換成gbk編碼格式,然後再進行排序操作。使用這種方式實現的中文漢字拼音排序功能需要注意的是:由於MySQL的欄位函數CONVERT()只能轉換文本內容,所以,如果要對轉換後的拼音內容做排序,必須把文本轉換成字元串類型,否則會出現排序錯誤的情況。
第二種方式:使用中文索引欄位
另外,在MySQL資料庫中,還可以使用中文索引欄位來實現中文漢字拼音排序功能,如下:
`SELECT * FROM table ORDER BY CONVERT(name USING gbk)`
這段SQL查詢語句表示將table表中name欄位的內容轉換成gbk編碼格式,然後利用這個索引對中文內容按拼音順序排序。使用這種方式實現的中文漢字拼音排序功能,最大的優勢在於不需要做額外的排序操作,只需要把原數據源轉換成gbk格式即可。
綜上,在MySQL資料庫中,可以通過欄位函數CONVERT()或者直接利用中文索引欄位分別實現中文漢字拼音排序功能。 由於CONVERT()只能轉換文本內容,所以實現起來稍顯麻煩,另外創建中文索引欄位時也要小心操作,以免出現數據查詢錯誤的情況。
2. mysql中怎麼使用中文
安裝數據抄庫的時候襲選擇utf-8或者是gbk就行。
或者:
mysql安裝目錄下的my.ini文件以下部分:
[mysql]
//改成你要的編碼,比如gbk之類
default-character-set=utf8
[mysqld]
# The TCP/IP Port the MySQL Server will listen on
port=3306
//改成你要的編碼,比如gbk之類 注意要和上面修改的一樣
default-character-set=utf8
可以參考:http://www.javaeye.com/topic/239698