InterBase クイック スタート:Part IV - DISTINCT で重複行を取り除く

提供: InterBase

InterBase クイック スタート:Part IV - データの抽出 へ戻る

列には、しばしば重複エントリが含まれることがあります。DISTINCT キーワードにより、その結果から重複する値を削除することができます。識別された(異なる)値のみを抽出することができます。

Image 025.jpg それぞれに対して 1 つずつ選択する

  1. Job テーブルからすべてのジョブ コードを取得したい場合には、次のクエリを使用します:
    SELECT job_code
    FROM   Job
    

    ご覧のとおり、このクエリの結果には多くの値が含まれており、それらをいくつかは重複しています。その結果から重複する値を削除するには、DISTINCT キーワードを使用しなければなりません。

  2. 以前のクエリを編集して、DISTINCT キーワードを入れます:
    SELECT DISTINCT job_code
    FROM   Job
    

    これにより、希望する結果が生成され、各ジョブ コードはそれぞれ一度だけ一覧に現れるようになります。

  3. ではここで、DISTINCT キーワードを使用して 2 つの列を指定するクエリを入力してみましょう:
    SELECT DISTINCT job_code,
                    job_grade
    FROM   Job
    

    DISTINCT は、SELECT 文の中で指定したすべての列に対して適用されます。この場合、結果には重複するジョブ コードを現れます。これは、DISTINCTjob_codejob_grade を一緒に扱っているためで、結果での値の組み合わせが区別できる(重複していない)からです。このクエリの想定される結果は、下の図のようになります:

    TutorialDistinct.png

次は: