データシート ビューに表示されるフィールドに重複するデータが含まれるレコードを省略するとき、UniqueValues プロパティを使用できます。 たとえば、クエリの出力に複数のフィールドが含まれる場合、結果に含まれる所与のレコードに対し、すべてのフィールドからの値の組み合わせが一意になる必要があります。
注: UniqueValues プロパティは、追加アクション クエリ、表作成アクション クエリ、選択クエリにのみ適用されます。
設定
UniqueValues プロパティでは、次の設定が使用されます。
設定 |
説明 |
はい |
データシート ビューに表示されるすべてのフィールドの値が一意になるレコードのみを表示します。 |
いいえ |
(既定) すべてのレコードを表示します。 |
クエリのプロパティ シートまたは クエリ ウィンドウ の SQL ビュー に UniqueValues プロパティを設定できます。
注: SQL ステートメントを使用して新しいクエリを作成するとき、このプロパティを設定できます。 述語の DISTINCT は、UniqueValues プロパティ設定に相当します。 述語の DISTINCTROW は、UniqueRecords プロパティ設定に相当します。
解説
UniqueValues プロパティを [はい] に設定すると、クエリの結果は更新できず、他のユーザーがその後行った変更が反映されません。
UniqueValues プロパティと UniqueRecords プロパティは、一度にいずれかのみを [はい] に設定できるという点で関連しています。 たとえば、UniqueValues プロパティを [はい] に設定すると、Microsoft Office Access 2007 では、UniqueRecords プロパティが自動的に [いいえ] に設定されます。 ただし、両方を [いいえ] に設定することは可能です。 両方のプロパティを [いいえ] に設定すると、すべてのレコードが返されます。
ヒント
フィールド内の値のインスタンス数を数える場合、集計クエリを作成します。
例
この例の SELECT ステートメントは、顧客が存在する国/地域の一覧を返します。 それぞれの国/地域にたくさんの顧客が存在する場合があり、たくさんのレコードで、Customers テーブルの国/地域が同じになることがあります。 ただし、各国/各地域はクエリ結果で 1 回だけ表示されます。
この例では、次のデータを含む Customers テーブルが使用されます。
国/地域 |
会社名 |
ブラジル |
Familia Arquibaldo |
ブラジル |
Gourmet Lanchonetes |
ブラジル |
Hanari Carnes |
フランス |
Du monde entier |
フランス |
Folies gourmandes |
ドイツ |
Frankenversand |
アイルランド |
Hungry Owl All-Night Grocers |
この SQL ステートメントは、次のテーブルの国/地域を返します。
SELECT DISTINCT Customers.CountryRegion
FROM Customers;
返される国/地域 |
ブラジル |
フランス |
ドイツ |
アイルランド |