SQL Server 照合順序 意味

2021-09-01 21:34:14 字數 1609 閱讀 3498

「japanese_ci_as」 とか。

意味もわからず呪文のように覚えていた頃もありましたが、意味がわかれば結構簡単に覚えられます。

先ずはこの」ci」"as」の末尾の一文字

「i」-insensitive:識別しない

「s」-sensitive:識別する

さらに、前の一文字

「c」-case:大文字小文字(例:」a」と」a」)

「a」-accesnt:アクセント記號(例:」a」と」á」)

「k」-kana:ひらがなとカタカナ(例:」あ」と」ア」)

「w」-width(?):文字列幅(例:」ア」と」ア」)

これらの組み合わせで出來ています。

なので、」japanese_ci_as」なら、「日本語・大文字小文字は識別しない・アクセントは識別する」という意味になります。省略されたものは「識別しない」になるようです。

「日本語にアクセント記號は無いぞ!」という至極最もな突っ込みはありますが、ちょいと実験してみました。

[t-sql]

declare @sometable table (

somevalue nvarchar(10)

collate japanese_ci_as )

insert into @sometable values (『か』)

insert into @sometable values (『が』)

insert into @sometable values (『カ』)

insert into @sometable values (『ガ』)

insert into @sometable values (『カ』)

insert into @sometable values (『ガ』)

insert into @sometable values (『つ』)

insert into @sometable values (『っ』)

select count(*), somevalue from @sometable

group by somevalue

【結果】

cnt     somevalue

———– ———-

3      か

3      ガ

1      っ

1      つ

では、照合順序を」japanese_ci_ai」にしてみると…

【結果】

cnt     somevalue

———– ———-

6      か

2      つ

なんと、濁點はともかく、「小さい」つ」」も「アクセント記號」だったのです。(これは知らなかった…)

そして、これらのほかに

「_bin」-binary

「_bin2″-binary – unicode codepoint

というのもあります。

このあたりについては、

コチラ:msdn-sql server books online- windows 照合順序並べ替えスタイルに詳しく解說されています。

カテゴリー: その他ツール類   作成者: tkinugaw

パーマリンク

SQL Server2000和2005中合併列值

有表 tb,如下 id value 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到結果 id values 1 aa,bb 2 aaa,bbb,ccc 在sql server2000 中我們處理的方式一般都是用自定義函式去處理 舉例如下 create function dbo.f ...

SQLServer和VS的安裝順序

1.種方法,先裝sqlserver2005後裝vs2005 2.只裝vs2005,然後因為vs2005裡面已經有了乙個sqlserver的express版本了,不過裡面沒有裝上管理工具,這個時候你只需要去給它裝乙個microsoft sql server management studio expr...

SqlServer按指定順序進行排序

sql一 select from tabname where1 1order by charindex rtrim cast 列名 as nchar 北京,上海,廣州 sql二 select from tabname where id in 1 2,3 4,5 order by charindex ...