在sql語句中,在檢索語句的最後加上乙個order by+排序列名就可以對該列的資料進行排序。排序的方式有兩種:公升序(asc)和降序(dsc)。
前些天修改專案**時發現,按照這種規則實現排序時,只有當資料庫表中的資料為英文時,才可以正確排序,當表中的資料為中文時,就不能按照中文的首字母對資料進行排序。究其原因發現,儲存字段使用的是utf-8字符集,所以在排序時,需要先對排序字段進行轉碼。
以下是在myeclipse上的實現過程:
(1)首先新建乙個mysqllocaldialect類對mysqldialect進行擴充套件
packageutils;
importorg.hibernate.hibernate;
importorg.hibernate.dialect.mysqldialect;
importorg.hibernate.dialect.function.sqlfunctiontemplate;
importorg.hibernate.type.stringtype;
publicclass mysqllocaldialectextendsmysqldialect}
name="hibernateproperties"
>
<
props
>
<
prop
key="hibernate.dialect"
>utils.mysqllocaldialect<
/prop
>
…… <
/props
>
<
/property
>
(3)再寫查詢語句就可以了。
string sql="from courseteacher a where a.worker.workerid=? order by convert_gbk(a.course.name)";
資料庫獲取漢字拼音的首字母的function
create or replace function f trans pinyin capital p name in varchar2 return varchar2 as v compare varchar2 100 v return varchar2 4000 function f nlsso...
資料庫 03 排序查詢
高階3 排序查詢 語法 select 查詢列表 from 表 where 篩選條件 order by 排序列表 asc desc 注 1.預設公升序 2.一般放在最後面,limit字句除外 案例1 查詢員工資訊,要求工資從高到低排序 select from employees order by sa...
如何從資料庫中讀取資料
今天要用資料庫的時候,我發現我竟然忘記了怎麼從資料庫中讀取資料,而查了一圈谷歌,又是非常失望 內容基本就是摘抄了mysqldb和web.py的官方文件,實在是失望。這篇文章先介紹mysqldb和web.py,django以後補上。db mysqldb.connect cursor db.cursor...