mysql 根據漢字首字母排序
1:如果資料庫表字段的字元編碼是latin1_swedish_ci
select * from tablename order by birary(name) asc ;
2:如果資料庫表字段的字元編碼是utf8_general_ci(常用)
select * from tablename WHERE 1=1 order by CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ASC
首先,對name欄位進行gbk編碼,然後,對編碼後的內容根據gbk_chinese_ci進行整理排序。這樣得到的結果,英文是排在中文前面的,而且是根據拼音排序的。
tablename:資料庫表名
name:排序欄位名
CONVERT:提供一個在不同字符集之間轉換資料的方法。
COLLATE:COLLATE是一個演算法語句,主要用於對字元進行排序,經常出現在表的建立語句中。sql語句裡面的COLLATE主要用於對字元進行排序。
---------------------
作者:天才小小布
來源:CSDN
原文:https://blog.csdn.net/w410589502/article/details/58049091
相關推薦
mysql 根據漢字首字母排序
1:如果資料庫表字段的字元編碼是latin1_swedish_ci select * from tablename order by birary(name) asc ; 2:如果資料庫表字段的字元編碼是utf8_general_ci(常用) sele
mysql根據漢字首字母排序的方法
實現mysql中根據漢字首字母排序的sql語句: 程式碼示例:select areaname from area order by convert(areaname using gbk) collate gbk_chinese_ci asc 說明: areaname
根據漢字首字母排序並進行分組
需 求: 頁面有一個下拉選項框(選擇汽車品牌),由於品牌比較多,所以需要通過首字母就能快捷選擇,也就是說:點選字母 “B”後,把汽車品牌首拼音字母為 “B” 的顯示出來。汽車品牌資料從資料庫表裡面取。 分 析: 這裡分兩種情況,第一種:表裡面有汽車品牌名稱首字母欄位
mysql獲取漢字首字母函數
arch cef character get gbk then val 函數 mysql DELIMITER ;;CREATE FUNCTION `GET_FIRST_PINYIN_CHAR`(PARAM VARCHAR(255)) RETURNS VARCHAR(2) C
mysql 根據漢子首字母搜尋
大小寫都支援 select * from ecs_brand where ELT( ( CONV(HEX(LEFT(CONVERT(`brand_name` USING gbk),1)),16,10), 0xB0A1,0xB0C5,0xB2C1,0xB4EE
通訊錄之按漢字首字母排序-java
最近開發手機端OA系統通訊錄時遇到了用漢字首字母排序的問題,各種谷歌後發現了一個輪子pinyin4J,這個輪子是可以將漢字轉換成字母拼音,個人覺得很好用,完美的解決了排序的問題,分享一下。 原部落格地址 一.工具介紹 pinyin4j是一個支援將簡
Android 漢字首字母排序
需要用到的方法: 用到jar包: pinYin4j.jar /** * 漢字轉換位漢語拼音首字母,英文字元不變 * @param chines 漢字 * @re
城市列表-根據拼音首字母排序
今天我們就簡單的實現一下城市的排序 讀取我們城市的資訊並通過listview展示 首先看一下我們的佈局檔案 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/and
java中實現根據中文首字母排序
package awu.demo; import java.text.Collator; import java.util.Arrays; import java.util.Comparator;
mysql 按照漢字的拼音排序、按照首字母分類
專案中有時候需要按照漢字的拼音排序,比如聯絡人列表、礦物分類等,有的還需要按拼音字母從A到Z分類顯示。 如果儲存漢字的欄位編碼使用的是GBK字符集,因為GBK內碼編碼時本身就採用了拼音排序的方法(常用一級漢字3755個採用拼音排序,二級漢字就不是了,但考慮到人名等都是常
根據漢字拼音首字母排序
Comparator<Object> com=Collator.getInstance(java.util.Locale.CHINA);String[] newArray={"
mysql排序的中文首字母排序和自定義排序
二級 and gbk order by 首字母 order 排序 sql排序 code select * FROM organ_new where city_code = ‘SZ0755‘ and organ_type = ‘H‘ and state =
漢字首字母拼音排序-Python
安裝pypinyin,目的是將中文轉換成拼音 pip install pypinyin 利用sort()函式進行排序 from pypinyin import lazy_pinyin chinese_list=[u'中國人', u'啊', u'
Mysql 通過拼音首字母分組和排序(2)
第一篇講的是直接套用mysql函式定義來實現拼音分組和排序 這一篇通過mysql function(函式) 進行實現,直接貼程式碼: DELIMITER $$ CREATE FUNCTION `fristPinyin`( P_NAME VA
Android按照拼音排序獲取聯絡人並根據拼音首字母獲取聯絡人
在寫安卓程式的時候,需要獲取聯絡人的資訊,需求是根據聯絡人姓名拼音的首字母查詢聯絡人的資訊,也就是說給定一個字母,要查出所有的拼音以該字母開頭的聯絡人。在網上看了好多部落格,都建議說使用SORT_KE
java 優先順序以特殊字元、數字、英文、漢字(且漢字部分以漢字首字母)順序排序
1,當我使用如下程式碼對其中的list進行排序時: 優先順序以特殊字元、數字、英文、漢字(且漢字部分以漢字首字母)順序排序 @Test public void sortList(){ List<String>list=Lists.newA
mysql 中文欄位排序( 按拼音首字母排序) 的查詢語句
在處理使用Mysql時,資料表採用utf8字符集,使用中發現中文不能直接按照拼音排序 如果資料表tbl的某欄位name的字元編碼是latin1_swedish_ci select * from `tbl` order by birary(name) asc ; 如果資
關於城市列表按首字母排序、分組及查詢的一個解決方案(mysql端)java
最近要做一個城市列表,網上找了個城市列表往mysql裡面一匯入,OK! 再把城市id,名稱查出來放到list裡面丟給前端客戶端處理。 後面客戶端找過來了,這樣把資料扔過去他那邊不好處理,要求在後臺根據首字母分組之後再傳過去,然後找了一上午處理方法,總體來說有三種方案: 1
根據中文拼音首字母排序、取得中文拼音首字母函式 oracle 排序
根據中文拼音首字母排序、取得中文拼音首字母函式 介紹根據中文的首字母、筆畫、部首排序函式【NLSSORT】: 1)、首字母 SELECT * FROM T_TABLE ORDER BY NLSSORT(NAME, 'NLS_SORT=SCHINESE_PINYIN_M'
php按照中文首字母排序
substr 工具類 rar echo from 獲取 utf turn strong 1> 網絡上很多php的工具類可以將漢字轉為拼音; 2> 將拼音進行排序即可 另一種則是類似mysql轉碼方式: 1 foreach ($array a