ホームページ  >  記事  >  データベース  >  MySQL で固有のデータをクエリする方法

MySQL で固有のデータをクエリする方法

PHPz
PHPz転載
2023-05-26 10:21:145754ブラウズ

1. 一意のデータの行全体をクエリする

MySQL では、DISTINCT キーワードまたは GROUP BY 句を使用して一意のデータをクエリできます。キーワードはデータの行全体に作用し、GROUP BY 句はデータの各列をグループ化して結果を返します。

  1. DISTINCT キーワードを使用します

DISTINCT キーワードを使用して、重複するデータ行全体を除外します。構文は次のとおりです:

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

そのうち、column1、column2、... は、一意のデータをフィルタリングする必要がある列名を表します。1 つ以上の列を指定し、複数の列をカンマで区切ることができます。

たとえば、次のような学生テーブル (students) があります:

##1张三20男2李四21男性3 王呉20女#4趙劉22女性5Qian Qi21男性6Sunba20女
id name age 性別
一意の学生情報をクエリする必要がある場合は、次の SQL を使用できます。ステートメント:

SELECT DISTINCT * FROM students;
実行結果は次のとおりです:

idnameage性別 1张三20男性2李421男性##34#56DISTINCT キーワードを使用すると、重複するデータ行全体をフィルターで除外できることがわかります。 。
王五 20
赵六 #22
銭琦 21 男性
Sun Ba 20

    GROUP BY 句を使用する
  1. GROUP BY 句を使用すると、列に従ってデータをグループ化し、グループ化の結果を返すことができます。 GROUP BY 句は DISTINCT キーワードに似ていますが、異なる点は、GROUP BY 句は各列をグループ化できるのに対し、DISTINCT キーワードはデータの行全体にのみ作用できることです。

GROUP BY 句の構文は次のとおりです。

SELECT column1, column2, ... FROM table_name GROUP BY column1, column2, ...;

たとえば、学生の年齢と性別に基づいて一意のデータをクエリする必要がある場合は、次の SQL ステートメントを使用できます。 :

SELECT age, gender FROM students GROUP BY age, gender;

実行結果は以下の通りです:

年齢##20女性20男性21男性22女GROUP BY 句を使用しても達成できることがわかります。非重複データのクエリの影響。
性別

2. 重複しない部分データのクエリ

場合によっては、行全体の重複しないデータのクエリに加えて、非重複データのクエリも必要になることがあります。 - 特定の列のデータが重複します。この場合、サブクエリまたは GROUP BY 句を使用できます。

サブクエリを使用する
  1. サブクエリを使用して、重複しないデータをフィルタリングする必要がある列をクエリし、IN キーまたは NOT IN キーを渡します。 Word は結果を元の表と照合して、目的の結果を取得します。
たとえば、student テーブルの一意の年齢情報をクエリする必要がある場合、次の SQL ステートメントを使用できます:

SELECT age FROM students WHERE age IN (SELECT DISTINCT age FROM students);
実行結果は次のとおりです:

年齢##20ご覧のとおり、サブクエリを使用すると、特定の列の一意のデータをフィルターし、必要な結果を返すことができます。
21
22

GROUP BY 句を使用する

  1. GROUP BY 句を使用して、一部の列をクエリするときに重複データを削除します。一意のデータをフィルタリングするには、クエリで対応する列を指定し、その列を GROUP BY 句のパラメータとして使用するだけです。

  2. たとえば、student テーブル内の固有の性別情報をクエリする必要がある場合、次の SQL ステートメントを使用できます:
SELECT gender FROM students GROUP BY gender;

実行結果は次のとおりです:

## ######## ##性別女性男性########

# ご覧のとおり、GROUP BY 句を使用すると、一部の列で重複しないデータをクエリする機能も実現できます。

以上がMySQL で固有のデータをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。