ホームページ > データベース > mysql チュートリアル > MySQL で固有のデータをクエリする方法

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

PHPz
リリース: 2023-04-21 10:57:24
オリジナル
8401 人が閲覧しました

MySQL は現在最も人気のあるリレーショナル データベース管理システムであり、データの保存と処理の分野で広く使用されています。実際のアプリケーションでは、一意のデータをクエリすることが一般的な要件です。この記事では、MySQL で固有のデータをクエリする方法を紹介します。

1. 非重複データの行全体をクエリする

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

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

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

SELECT DISTINCT column1, column2, ... FROM table_name;
ログイン後にコピー

Among them 、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 キーワードを使用して結果を比較します。元のテーブルと一致して望ましい結果が得られます。
たとえば、student テーブルの一意の年齢情報をクエリする必要がある場合、次の SQL ステートメントを使用できます:

SELECT age FROM students WHERE age IN (SELECT DISTINCT age FROM students);
ログイン後にコピー
実行結果は次のとおりです:

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

    GROUP BY 句を使用すると、一部の列で重複しないデータをクエリする機能も実現できます。クエリ内で一意のデータをフィルタリングする必要がある列を指定し、それらを GROUP BY 句のパラメータとして使用するだけです。
  1. たとえば、student テーブルの一意の性別情報をクエリする必要がある場合、次の SQL ステートメントを使用できます:
SELECT gender FROM students GROUP BY gender;
ログイン後にコピー

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

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

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

要約すると、重複しないデータのクエリは MySQL で頻繁に使用される操作であり、DISTINCT キーワード、GROUP BY 句、サブクエリを使用して実現できます。実際のアプリケーションでは、ニーズに応じてさまざまな方法を選択して固有のデータをクエリできます。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート