java - solr按照拼音首字母排序
問題描述
有個(gè)標(biāo)題字段,想按照拼音首字母排序,在solr方法里有一個(gè)方法
params.setSort('title',ORDER.asc);//排序字段,正序還是倒序
但這樣設(shè)置好像結(jié)果不是我想要的,我想要的結(jié)果如下:序號(hào) 標(biāo)題 首字母1 阿 a2 國(guó) g3 人 r4 中 z
在sql語句里能按照拼音首字母排序,我想知道在solr里能按照拼音首字母排序么?要怎么做,求指導(dǎo)???
問題解答
回答1:你自己新建立一個(gè)以“title首字母“為值的新字段作為field不就行了嗎,一般來說實(shí)際應(yīng)用中都以自定義的字段作為排序條件
回答2:有個(gè)比較簡(jiǎn)單的做法,如下:
List<String> strs = new ArrayList<>();strs.add('中');strs.add('啊');strs.add('坎');strs.add('哈');strs.add('少');strs.add('發(fā)');strs.add('頂');strs.add('擦');strs.add('鵝');strs.add('巴');// 排序strs.sort(Collator.getInstance(Locale.CHINA));// 打印strs.forEach(System.out::println);
結(jié)果
啊 // A巴 // B擦 // C頂 // D鵝 // E發(fā) // F哈 // H坎 // K少 // S中 // Z
還可以使用pinyin4j來進(jìn)行更復(fù)雜的排序
相關(guān)文章:
1. javascript - 在 model里定義的 引用表模型時(shí),model為undefined。2. python3.x - c++調(diào)用python33. css3 - 沒明白盒子的height隨width的變化這段css是怎樣實(shí)現(xiàn)的?4. atom開始輸入!然后按tab只有空格出現(xiàn)沒有html格式出現(xiàn)5. css3 - 這個(gè)右下角折角用css怎么畫出來?6. android - 課程表點(diǎn)擊后浮動(dòng)后邊透明可以左右滑動(dòng)的界面是什么?7. java - 根據(jù)月份查詢多個(gè)表里的內(nèi)容怎么實(shí)現(xiàn)好?8. 關(guān)于docker下的nginx壓力測(cè)試9. javascript - 一個(gè)關(guān)于客戶端和前端通信的疑惑?10. debian - docker依賴的aufs-tools源碼哪里可以找到啊?
