照合順序関数 - TERTIARY_WEIGHTS (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

この関数は、第 3 の SQL 照合順序で定義された、Unicode 以外の文字列式内の文字ごとに、バイナリ文字列の重みを返します。

Transact-SQL 構文表記規則

構文

TERTIARY_WEIGHTS( non_Unicode_character_string_expression )  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

non_Unicode_character_string_expression
第 3 の SQL 照合順序で定義される charvarchar、または varchar(max) 型の文字列 です。 これらの照合順序の一覧については、「解説」を参照してください。

戻り値の型

TERTIARY_WEIGHTS は、non_Unicode_character_string_expressionchar または varchar であるときに varbinary を返し、non_Unicode_character_string_expressionvarchar(max) データ型が含まれるときには varbinary(max) を返します。

解説

第 3 の SQL 照合順序で non_Unicode_character_string_expression が定義されていない場合、TERTIARY_WEIGHTS は NULL を返します。 次の表に、第 3 の SQL 照合順序を示します。

並べ替え順 ID SQL 照合順序
33 SQL_Latin1_General_Pref_CP437_CI_AS
34 SQL_Latin1_General_CP437_CI_AI
43 SQL_Latin1_General_Pref_CP850_CI_AS
44 SQL_Latin1_General_CP850_CI_AI
49 SQL_1xCompat_CP850_CI_AS
53 SQL_Latin1_General_Pref_CP1_CI_AS
54 SQL_Latin1_General_CP1_CI_AI
56 SQL_AltDiction_Pref_CP850_CI_AS
57 SQL_AltDiction_CP850_CI_AI
58 SQL_Scandinavian_Pref_CP850_CI_AS
82 SQL_Latin1_General_CP1250_CI_AS
84 SQL_Czech_CP1250_CI_AS
86 SQL_Hungarian_CP1250_CI_AS
88 SQL_Polish_CP1250_CI_AS
90 SQL_Romanian_CP1250_CI_AS
92 SQL_Croatian_CP1250_CI_AS
94 SQL_Slovak_CP1250_CI_AS
96 SQL_Slovenian_CP1250_CI_AS
106 SQL_Latin1_General_CP1251_CI_AS
108 SQL_Ukrainian_CP1251_CI_AS
113 SQL_Latin1_General_CP1253_CS_AS
114 SQL_Latin1_General_CP1253_CI_AS
130 SQL_Latin1_General_CP1254_CI_AS
146 SQL_Latin1_General_CP1256_CI_AS
154 SQL_Latin1_General_CP1257_CI_AS
156 SQL_Estonian_CP1257_CI_AS
158 SQL_Latvian_CP1257_CI_AS
160 SQL_Lithuanian_CP1257_CI_AS
183 SQL_Danish_Pref_CP1_CI_AS
184 SQL_SwedishPhone_Pref_CP1_CI_AS
185 SQL_SwedishStd_Pref_CP1_CI_AS
186 SQL_Icelandic_Pref_CP1_CI_AS

charvarchar、または varchar (max) 列の値で定義されている計算列の定義に対して TERTIARY_WEIGHTS を使用します。 クエリの ORDER BY 句で charvarchar、または varchar(max) 列を指定する場合は、計算列と、charvarchar、または varchar(max) 列の両方に対するインデックス定義によって、パフォーマンスを向上させることができます。

この例では、TERTIARY_WEIGHTS 関数を char 列の値に適用するテーブルに計算列を作成します。

CREATE TABLE TertColTable  
(Col1 char(15) COLLATE SQL_Latin1_General_Pref_CP437_CI_AS,  
Col2 AS TERTIARY_WEIGHTS(Col1));  
GO   

関連項目

ORDER BY 句 (Transact-SQL)