溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL中怎么實現(xiàn)中文排序

發(fā)布時間:2021-07-13 15:27:27 來源:億速云 閱讀:443 作者:Leah 欄目:大數(shù)據(jù)

本篇文章為大家展示了MySQL中怎么實現(xiàn)中文排序,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

以前還真沒有關注這個中文排序的問題,這里記錄下。

一張學生表

1
select *from t_student;

MySQL中怎么實現(xiàn)中文排序

我們根據(jù)s_name來排序

1
select *from t_student order by s_name;

MySQL中怎么實現(xiàn)中文排序

這里的中文排序,是不對的,應該是由于字符集的問題,一般情況下,數(shù)據(jù)庫中的編碼都是使用UTF-8的,所以,對于中文會有問題。

從網(wǎng)上找到2中解決辦法

create table的時候加上binary屬性(經(jīng)測試,不好用)

注意下s_name字段,我們添加了binary屬性

CREATE TABLE `t_student_test` (
  `s_id` int(11) DEFAULT NULL COMMENT '學生ID',
  `s_name` varchar(20) binary DEFAULT NULL COMMENT '學生姓名',
  `s_gender` int(11) DEFAULT NULL COMMENT '學生性別 0-男,1-女',
  `s_birthday` date DEFAULT NULL COMMENT '出生日期',
  `s_hobby` varchar(100) DEFAULT NULL COMMENT '愛好',
  `c_id` int(11) DEFAULT NULL COMMENT '班級ID'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='學生表';

這里,我試驗是失敗的,中文排序依然不對

在order by 后面,使用 convert函數(shù)

1
select *from t_student order by convert(s_name using gbk);

MySQL中怎么實現(xiàn)中文排序

上述內容就是MySQL中怎么實現(xiàn)中文排序,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI