sql 按 拼音 排序
select * from Benutzer, um nach Namen sortieren Chinese_PRC_CS_AS_KS_WS
二 排序 规则 简介:.
什么叫排序规则呢?ms是这样描述的:"在 microsoft sql server 2000 中, 字符串的物理存储由排序规则控制。排序规则指定表示每个字符的位模式以及存 储和比较字符所使用的规则。"
在 查询 分析器 内 执行 下面 语句, 可以得到 sQL Server 支持 的 所有 排序 规则.
select * from :: fn_helpcollations()
排序 规则 名称 由 两 部份 构成, 前 半 部份 是 指 本 排序 规则 所 支持 的 字符 集 如. Chinese_prc_cs_ai_ws 前 半 部份: 指 Unicode 字符 集, chinese_prc_ 指 针对 大陆 简体字 Unicode 的 排序 规则. 排序 规则 的 后 半 部份 即 后缀 含义: _bin 二进制 排序 _ci (cs) 是否 区分 大小写, ci 不 区分, cs 区分 _ai (as) 是否 区分 重音, ai 不 区分, wie 区分 _ki (ks) 是否 区分 假名 类型, ki 不 区分, ks 区分 _wi (ws) 是否 区分 宽度 wi 不 区分, ws 区分
区分 大小写: 如果 想让 比较 将 大写字母 和 小写 字母 视为 不等, 请 选择 该 选项 区分 重音:.. 如果 想让 比较 将 重音 和 非 重音 字母 视为 不等, 请 选择 该 选项 如果 选择 该 选项, 比较 还将 重音 不同 的字母 视为 不等 区分 假名. 如果 想让 比较 将 片假名 和 平假名 日语 音节 视为 不等, 请 选择 该 选项 区分 宽度. 如果 想让 比较 将 半角 字符 和 全 角 字符 视为 不等, 请 选择该 选项
三.Anwendungen Sortierungs: SQL Server bietet eine Reihe von Fenstern und spezieller Sqlserver Sortierung, aber ihre Anwendung ist oft von Entwicklern ignoriert. In der Tat ist es von großem Nutzen in der Praxis.
Fällen 1: den Inhalt der Tabelle Spaltennamen in alphabetischer Reihenfolge Lassen:
create table # t (id int, name varchar (20)) einsetzen #t 1 wählen, die Vereinigung alle 2, nationale Vereinigung wählen alle 3 wählen, die alle Menschen Vereinigung 4 wählen, ordnen A
select * from #t Reihenfolge nach Namen Tabelle # t/* Ergebnis chinese_prc_cs_as_ks_ws fallen: id Name
----------- - ------------------- A 2 4 3 1 Land */
Fällen 2: Tabellenspalte Namenstagesst Hub nach Inhalt sortiert:
create table #t (id int, name VARCHAR (20))
Einsatz #t 1 zu wählen, drei union all 2 wählen, B union all 3 wählen, zwei Vereinigung alle 4 wählen, eine Vereinigung alle 5 wählen, zehn select * from #t Reihenfolge nach Namen collate chinese_prc_stroke_cs_as_ks_ws drop table #t/* Ergebnis: id
Name
----------- -------------------- 4 a 2 b 3 = 5 + 1 * drei/vier
in der praktischen Anwendung KollationIch jetzt ein Beispiel geben:
mit charakteristischen Sortierungs berechnet Striche der chinesischen Schriftzeichen
Um die Striche der chinesischen Schriftzeichen zu berechnen, haben wir erste Vorbereitung zu tun, wissen wir, Fenster multinationalen Zeichen, Unicode derzeit enthalten chinesischen Schriftzeichen waren 20.902. Vereinfachte chinesische Schriftzeichen Unicode-Wert GBK Code 19968 von Anfang an. Lassen Sie uns zunächst alle Zeichen bekommen, nicht Wörterbuch Sqlserver Methode verwenden wir einfach nutzen SQL-Anweisung nehmen Sie bekommen können:
Top-20902 Code wählen = Identität (int, 19968,1) in #t von syscolumns a, syscolumns b
dann die folgende Anweisung, wir alle Charaktere erhalten, wird es durch Unicode-Werte sortiert:
Auswahlcode, nchar (Code) als cnword von #t
wir dann select-Anweisung und lassen sie es sort streicht.
Auswahlcode, nchar (Code) als cnword von #t Auftrag von nchar (Code) collate chinese_prc_stroke_cs_as_ks_ws, Code
Ergebnis: Code cnword
Dieser Artikel Quelle http://www.itphome.cn/shujukuyingyong/mssql/2010-01-27/106.html
[1] : http://www.itphome.cn/shujukuyingyong/mssql/2010-01-27/106.html
Können Sie uns eine kleine Probe Ihrer Ergebnisse geben, die Ihr Problem zeigt, und ein Beispiel für die Art o rder, die Sie tatsächlich statt wollen? Vielen Dank! –