MySQLのDISTINCT句の使い方

MySQLのDISTINCTキーワードは、クエリ結果内の重複行を除き、一意の行のみを返すために使用されます。

DISTINCTの基本的文法は以下の通りです。

SELECT DISTINCT column1, column2, ...
FROM table_name;

この構文において、column1、column2 は検索する列名で、table_name はデータを取得するテーブル名です。

DISTINCTを使用した場合は、指定したすべての列を考慮し、指定した複数の列の組み合わせが結果の中で1つだけの場合、その組み合わせを返します。1つの列のみ指定した場合は、その列の重複がないことを確認するだけです。

例えば、「customers」という名前のテーブルがあると仮定します。このテーブルは以下のデータを格納します。

+----+----------+-----+
| ID | NAME     | AGE |
+----+----------+-----+
| 1  | John     | 25  |
| 2  | Alice    | 30  |
| 3  | John     | 35  |
| 4  | Bob      | 25  |
+----+----------+-----+

「NAME」列を DISTINCT で照会すると、次のような結果が得られます。

+-------+
| NAME  |
+-------+
| John  |
| Alice |
| Bob   |
+-------+

DISTINCTキーワードはSELECT文でのみ有効です。重複する行をINSERT文やUPDATE文から削除する必要がある場合は、UNIQUE制約を使用するか、一時テーブルとINSERT INTO SELECTステートメントの組み合わせを使用して重複の削除を実現します。

bannerAds