方法 1: キーワード DISTINCT を追加する
mysql では、「SELECT」ステートメントと「DISTINCT」キーワードを使用して重複排除クエリを実行し、重複データをフィルターで除外できます。構文は「SELECT DISTINCT フィールド名 FROM データ テーブル名;」です。
DISTINCT キーワードの構文形式は次のとおりです。
SELECT DISTINCT <字段名> FROM <表名>;
このうち「フィールド名」は重複レコードを削除する必要があるフィールドの名前で、フィールドが複数ある場合はカンマで区切ります。
例
-- 示例1
SELECT DISTINCT name FROM Product WHERE price>100;
-- 示例2
SELECT DISTINCT name,age FROM student;
DISTINCT キーワードを使用する場合は、次の点に注意してください。
DISTINCT キーワードは、SELECT ステートメントでのみ使用できます。
1 つ以上のフィールドの重複を排除する場合、DISTINCT キーワードをすべてのフィールドの先頭に置く必要があります。
DISTINCT キーワードの後に複数のフィールドがある場合、複数のフィールドが結合されて重複排除されます。つまり、複数のフィールドの組み合わせがまったく同じである場合にのみ重複排除されます。
SELECT
ステートメントを使用してMySQL で 単純なデータ クエリを実行すると、一致するすべてのレコードが返されます。テーブル内の一部のフィールドに一意制約がない場合、これらのフィールドに重複した値が存在する可能性があります。固有のデータをクエリするために、MySQL は DISTINCT
キーワードを提供します。
DISTINCT キーワードの主な機能は、データ テーブル内の 1 つ以上のフィールドの重複データをフィルタリングして、1 つのデータのみをユーザーに返すことです。
方法 2: GROUP By でグループ化する
group by の原則の 1 つは、select 後のすべての列のうち、集計関数を使用しない列はgroup by の後に出現する必要があるということです。
例
-- GROUP By后面出现的属性并需在SELECT后面也出现
SELECT name FROM Product WHERE price<100 GROUP By name;