「照合」とはどういう意味ですか?


15

照合と照合シーケンスを複数回言及した本からsqliteを学んでいます。データベースの世界で正確にはどういう意味ですか?

回答:


15

基本的に、文字列を並べ替えて比較する方法。

例:

比較する:

  • アクセント:àvsävs a
  • ケース:A vs a

並べ替え:

  • スウェーデン語:z->å->ä->ö
  • デンマーク語:z->æ->ø->å

特殊文字の同等

  • ドイツ語ß= ss

ウィキペディア

一部のSQL(SQL Server 2008+)

DECLARE @foo TABLE (bar varchar(2))
INSERT @foo VALUES ('z'), ('æ'), ('ø'), ('å'), ('ss'), ('ß'), ('a'), ('ä')

SELECT * FROM @foo ORDER BY bar COLLATE Finnish_Swedish_100_CI_AS
SELECT * FROM @foo ORDER BY bar COLLATE Norwegian_100_CI_AS
SELECT * FROM @foo ORDER BY bar COLLATE Latin1_General_100_CS_AS --german (western europe) and default
SELECT * FROM @foo ORDER BY bar COLLATE German_PhoneBook_100_CS_AS

1

語源

「照合」は、おそらくetymology.comで最もよく定義されています。

14c後半、「まとめて比較する行為」

過去600年間、まったく変わっていません。「照合」とは、「まとめる」ことを意味し、それが本の順序であれ、年代順であれ、データベースであれ、すべて同じです。

コンピュータサイエンス

コンピューターサイエンスにも当てはまるので、私たちが行っているのは、ストレージメカニズムを順序付けから分離することです。ASCII-beticalについて聞いたことがあるかもしれません。これは、ASCII文字のバイナリエンコードに基づく比較を指します。そのシステムでは、ストレージと照合は同じ2つです。ASCII標準化された「エンコード」がこれまでに変更された場合、「照合」(順序)も変更されます。

POSIXはLC_COLLATE。しかし、Unicodeに移行すると、照合を標準化するためのコンソーシアム(ICU)が登場しました

SQL

SQL仕様には、照合順序を提供する2つの拡張機能があります。

  • F690:「照合のサポート:

    含まれcollation namecollation clausecollation definitiondrop collation

  • F692:照合サポートの拡張、

    スキーマの列に異なるデフォルトの照合を添付することを含みます。

基本的に、これらは、照合CREATEおよびDROP照合、演算子とソートの指定、および列のデフォルトの定義を行う機能を提供します。

SQLが提供するチェックアウトの詳細については、

限定された例を貼り付けるのではなく、非常に広範囲にわたるPostgreSQLテストスイートがあります。少なくとも最初のリンクをチェックして探してください'Türkiye' COLLATE "tr-x-icu" ILIKE '%KI%' AS "false"


-2

ソート順。パンチカードが照合されました。フラットファイルレコードは照合されます。これはデータベースに固有のものではありません。

テキストの場合は自明ですが、文字として保存されているバイナリデータの場合は注意が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.