DISTINCT (column)
指定した列の個別の値を含む 1 列のテーブルを返します。 つまり、重複する値は削除され、一意の値のみが返されます。
手記
この関数を使用して、ワークシートのセルまたは列に値を返すことはできません。代わりに、DISTINCT 関数を数式内に入れ子にして、別の関数に渡してカウント、合計、または他の操作に使用できる個別の値の一覧を取得します。
構文
DISTINCT(<column>)
パラメーター
用語 | 定義 |
---|---|
column |
一意の値が返される列。 または、列を返す式です。 |
戻り値
一意の値の列。
備考
DISTINCT の結果は、現在のフィルター コンテキストの影響を受けます。 たとえば、次の例の数式を使用してメジャーを作成すると、テーブルがフィルター処理されて特定の領域または期間のみが表示されるたびに結果が変わります。
この関数は、計算列または行レベル セキュリティ (RLS) 規則で使用する場合、DirectQuery モードでは使用できません。
関連する関数
別のバージョンの DISTINCT 関数 (DISTINCT (table)) があり、別のテーブルまたは式から重複する行を削除してテーブルを返します。
VALUES 関数は DISTINCT に似ています。また、一意の値のリストを返すためにも使用でき、通常は DISTINCT とまったく同じ結果が返されます。 ただし、コンテキストによっては、VALUES は 1 つの追加の特別な値を返します。 詳細については、VALUES 関数を参照してください。
例
次の数式は、インターネット チャネル経由で注文を生成した一意の顧客の数をカウントします。 次の表は、数式がレポートに追加されたときの可能性のある結果を示しています。
= COUNTROWS(DISTINCT(InternetSales_USD[CustomerKey]))
DISTINCT が直接返す値のリストを列に貼り付けることはできません。 代わりに、DISTINCT 関数の結果を、リストを使用して値をカウント、フィルター、または集計する別の関数に渡します。 この例を可能な限り簡単にするために、ここでは個別の値のテーブルが COUNTROWS 関数に渡されています。
行ラベル | 小物 | バイク | 衣類 | 総計 |
---|---|---|---|---|
2005 | 1013 | 1013 | ||
2006 | 2677 | 2677 | ||
2007 | 6792 | 4875 | 2867 | 9309 |
2008 | 9435 | 5451 | 4196 | 11377 |
総計 | 15114 | 9132 | 6852 | 18484 |
また、結果は加法ではないことに注意してください。 つまり、2007 の一意の顧客の合計数は、その年の Accessories、Bikes、Clothing の一意の顧客の合計ではありません。 その理由は、顧客を複数のグループにカウントできることです。