掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
SQL Server排序規(guī)則相信大家都有一些的了解,下面就為您介紹SQL Server排序規(guī)則應(yīng)用的一些擴(kuò)展,希望可以讓您對SQL Server排序規(guī)則有更深的認(rèn)識(shí)。

成都創(chuàng)新互聯(lián)專注于嘉興企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城開發(fā)。嘉興網(wǎng)站建設(shè)公司,為嘉興等地區(qū)提供建站服務(wù)。全流程按需制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
在實(shí)踐中SQL Server排序規(guī)則應(yīng)用的擴(kuò)展:
sql server漢字排序規(guī)則可以按拼音、筆劃等排序,那么我們?nèi)绾卫眠@種功能來處理漢字的一些難題呢?我現(xiàn)在舉個(gè)例子:
用SQL Server排序規(guī)則的特性計(jì)算漢字筆劃
要計(jì)算漢字筆劃,我們得先做準(zhǔn)備工作,我們知道,windows多國漢字,unicode目前收錄漢字共20902個(gè)。簡體gbk碼漢字unicode值從19968開始。
首先,我們先用sqlserver方法得到所有漢字,不用字典,我們簡單利用sql語句就可以得到:
- select top 20902 code=identity(int,19968,1) into #t from syscolumns a,syscolumns b
再用以下語句,我們就得到所有漢字,它是按unicode值排序的:
- select code,nchar(code) as cnword from #t
然后,我們用select語句,讓它按筆劃排序。
- select code,nchar(code) as cnword
- from #t
- order by nchar(code) collate chinese_prc_stroke_cs_as_ks_ws,code
結(jié)果:
- code cnword
- ----------- ------
- 19968 一
- 20008 丨
- 20022 丶
- 20031 丿
- 20032 乀
- 20033 乁
- 20057 乙
- 20058 乚
- 20059 乛
- 20101 亅
- 19969 丁
- ..........
從上面的結(jié)果,我們可以清楚的看到,一筆的漢字,code是從19968到20101,從小到大排,但到了二筆漢字的***個(gè)字“丁”,code為19969,就不按順序而重新開始了。有了這結(jié)果,我們就可以輕松的用sql語句得到每種筆劃漢字歸類的***個(gè)或***一個(gè)漢字。

我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流