INDEX コマンド

物理的ではなく連続的な順番でレコードへのアクセスを可能にする、Analytics テーブルのインデックスを作成します。

構文

INDEX {<ON> キー フィールド <D> <...n>|<ON> ALL <EXCLUDE フィールド名 <...n>>} TO ファイル名 <IF テスト> <WHILE テスト> <FIRST 範囲|NEXT 範囲> <OPEN> <ISOLOCALE ロケール コード>

パラメーター

名前 説明
ON キーフィールド D <...n> | ON ALL

インデックスで使用するキーフィールドまたはフィールド、または式。

演算フィールドや一時的に作成した式など、データ型に関係なく、あらゆる種類のフィールドのインデックスを作成することができます。

  • ONキー フィールドでは、指定した 1 つまたは複数のフィールドが使用されます。

    複数のフィールドでインデックス作成を行う場合は、テーブルは入れ子でインデックスが作成されます。入れ子でのフィールド間の順序は、フィールドを指定した順になります。

    キー フィールドに降順にインデックスを作成する D を含めます。デフォルトのインデックス順は昇順です。

  • ON ALL では、テーブル内のすべてのフィールドが使用されます。

    テーブル内のすべてのフィールドを基準にしてインデックス作成を行うと、入れ子でインデックスが作成されます。入れ子でのフィールド間の順序は、テーブル レイアウトで指定した順になります。

    ON ALL では昇順でしかインデックスを作成することができません。

EXCLUDE フィールド名

省略可能

ON ALL を使用して、インデックスを作成するときにのみ有効です。

コマンドから除外するフィールド。EXCLUDE では、指定したフィールドを除外して、ON ALL を微調整できます。

EXCLUDE は ON ALL の直後に置く必要があります。例:

ON ALL EXCLUDE field_1 field_2
TO ファイル名

インデックスと関連付けられたインデックス ファイルの名前。インデックス ファイルは .INX 拡張子で作成されます。

メモ

Analytics のユーザー インターフェイスでは、 インデックスの名前は、64 文字までの英数字に制限されます。名前にはアンダースコア文字(_)を使用できますが、他の特殊文字やスペースは使用できません。名前の先頭を数字にすることはできません。

IF テスト

省略可能

各レコードを処理するために真である必要がある条件式。コマンドは、その条件を満たすレコードに対してのみ実行されます。

メモ

IF パラメーターは、任意の範囲パラメーター(WHILE、FIRST、NEXT)が適用された後に、テーブルに残るレコードに対してのみ評価されます。

WHILE テスト

省略可能

各レコードを処理するために真である必要がある条件式。条件が false と評価するか、テーブルの最後に達したら、コマンドは実行を中止します。

メモ

WHILE を FIRST または NEXT とともに使用する場合は、1 つの制限に達するとすぐに、レコードの処理が停止します。

FIRST 範囲 | NEXT 範囲

省略可能

処理するレコード数:

  • FIRST 指定されたレコード数に達するまで、最初のレコードから処理を開始します
  • NEXT 指定されたレコード数に達するまで、現在選択されているレコードから処理を開始します

範囲は処理するレコード数を指定します。

FIRST と NEXT を省略すると、すべてのレコードがデフォルトで処理されます。

OPEN

省略可能

テーブルを開き、インデックスをテーブルに適用します。

ISOLOCALE ロケールコード

省略可能

メモ

Analytics の Unicode 版にのみ適用されます。

システム ロケールは「言語-」の形式で入力します。たとえば、カナダ フランス語はコード「fr_ca」を入力します。

次のコードを使用します。

  • 言語 ISO 639 標準言語コード
  • ISO 3166 標準国コード

    国コードを指定しない場合は、言語のデフォルト国が使用されます。

ISOLOCALE を使用しない場合は、デフォルト システム ロケールが使用されます。

インデックスを作成し、テーブルを開く

業者テーブルで、業者市区郡フィールドにインデックスを作成し、テーブルを開きます。

OPEN Vendor
INDEX ON Vendor_City to "CityIndex" OPEN

インデックスを作成し、テーブルに適用する

業者テーブルで、業者市区郡フィールドにインデックスを作成します。後から、インデックスをテーブルに適用します。

OPEN Vendor
INDEX ON Vendor_City to "CityIndex"
.
.
.
SET INDEX TO "CityIndex"

備考

このコマンドの動作の詳細については、レコードのインデックス付けを参照してください。

INDEX コマンドの並べ替えシーケンス

INDEX コマンドは、[並べ替え順序]オプション([ツール > オプション > テーブル])で指定された並べ順を使用します。デフォルトの並べ替え順序は次のとおりです。

詳細については、[並べ替え順]オプションとソート順序を参照してください。

Analytics のエディション

[並べ替え順]のデフォルト

関連付けられているソート順序

非 Unicode

システム デフォルト

(ASCII)

数字、大文字、小文字、小文字:

0, 1, 2... A, B, C... a, b, c...

たとえば、"Z" は "a" の前にソートされます。

Unicode

混合言語(UCA)

(Unicode 照合アルゴリズム)

数字、小文字と大文字の混合:

0, 1, 2... a, A, b, B, c, C...

たとえば、"a" は "Z" の前にソートされます。

大文字と小文字の区別

INDEX では大文字と小文字は区別されません。ご使用の Analytics のエディション(非 Unicode または Unicode)によって、文字列の大文字と小文字がインデックス作成に影響する場合があります。

大文字と小文字がインデックスに影響しないようにしたい場合は、INDEX と一緒に UPPER( ) 関数を使用できます。

INDEX ON UPPER(キー フィールド) TO "Index_file"