T-SQL-DISTINCT句
MS SQL Server DISTINCT キーワードをSELECTステートメントと組み合わせて使用して、重複するすべてのレコードを削除し、一意のレコードのみをフェッチします。
テーブルに複数の重複レコードがある場合があります。このようなレコードをフェッチするときは、重複するレコードをフェッチするのではなく、一意のレコードのみをフェッチする方が理にかなっています。
構文
以下は、重複レコードを排除するためのDISTINCTキーワードの基本構文です。
SELECT DISTINCT column1, column2,.....columnN
FROM table_name
WHERE [condition]
例
次のレコードを持つCUSTOMERSテーブルについて考えてみます。
ID NAME AGE ADDRESS SALARY
1 Ramesh 32 Ahmedabad 2000.00
2 Khilan 25 Delhi 1500.00
3 kaushik 23 Kota 2000.00
4 Chaitali 25 Mumbai 6500.00
5 Hardik 27 Bhopal 8500.00
6 Komal 22 MP 4500.00
7 Muffy 24 Indore 10000.00
次のSELECTクエリが重複した給与レコードを返す方法を見てみましょう。
SELECT SALARY FROM CUSTOMERS
ORDER BY SALARY
上記のコマンドは、元のテーブルからの重複レコードである給与2000が2回来る次の出力を生成します。
SALARY
1500.00
2000.00
2000.00
4500.00
6500.00
8500.00
10000.00
上記のSELECTクエリでDISTINCTキーワードを使用して、結果を確認してみましょう。
SELECT DISTINCT SALARY FROM CUSTOMERS
ORDER BY SALARY
上記のコマンドは、重複するエントリがない場合に次の出力を生成します。
SALARY
1500.00
2000.00
4500.00
6500.00
8500.00
10000.00