MySQL で distinct メソッドを使用する詳細な例

MySQL で distinct メソッドを使用する詳細な例

明確な

意味: distinctive は、一意のレコードの数を照会するために使用されます。つまり、distinct は一意のフィールドの数 (count(distinct id)) を返します。その理由は、distinct はターゲット フィールドのみを返すことができ、他のフィールドは返すことができないためです。

使用上の注意:

1.distinct [クエリ フィールド] は、クエリするフィールドの先頭、つまり最初のパラメータに配置する必要があります。
2. SELECT ステートメントでのみ使用でき、INSERT、DELETE、UPDATE では使用できません。
3.DISTINCT は、重複しないレコードを取得するために、次のすべてのパラメータを連結することを意味します。つまり、連結されたパラメータの各行は一意です。
4. all と一緒に使用することはできません。デフォルトでは、クエリ中にすべての結果が返されます。

1.1 1つのフィールドのみをチェックする

フィールド内の重複をチェックするということは、そのフィールド内の重複していないデータの列を選択することを意味します。

例のテーブル: psur_list

PLAN_NUMBER フィールドから重複を削除するには、次のステートメントを使用します。

psur_list から DISTINCT PLAN_NUMBER を選択します。

結果は次のとおりです。

1.2 複数フィールドの重複排除

複数のフィールドの重複を排除します。つまり、複数のフィールドを連結したレコードと、重複していないすべてのレコードを選択します。

例のテーブル: psur_list

PLAN_NUMBER フィールドと PRODUCT_NAME フィールドから重複を削除するには、次のステートメントを使用します。

psur_list から DISTINCT PLAN_NUMBER、PRODUCT_NAME を選択します。

結果は次のとおりです。

期待される結果: 最初のパラメータ PLAN_NUMBER のみが一意の値を持ちます

解決策1: group_concat関数を使用する

声明:

GROUP_CONCAT(DISTINCT PLAN_NUMBER) を PLAN_NUMBER,PRODUCT_NAME として psur_list から選択し、GROUP BY PLAN_NUMBER で終了します。

解決策2: グループ化を使用する

声明:

PLAN_NUMBER、PRODUCT_NAME を psur_list から選択し、PLAN_NUMBER でグループ化します。

結果は次のとおりです。

1.3 nullの扱い

distinctはnull値を除外しないため、返される結果にはnull値が含まれます。

テーブル psur_list は次のとおりです。

COUNTRY フィールドから重複を削除するには、次のステートメントを使用します。

psur_listから別の国を選択

結果は次のとおりです。

1.4 distinctiverowと同義

声明:

psur_listからDISTINCTROW COUNTRYを選択

結果は次のとおりです。

バイナリ集計関数でdistinctを使用する

集計関数では、DISTINCT は通常、COUNT と組み合わせて使用​​されます。 count()はnull項目を除外します

声明:

psur_listからCOUNT(DISTINCT COUNTRY)を選択

結果は次のとおりです: [実際には null 項目を含むレコードが 4 つあります。ステートメントを実行すると、null 項目が除外され、計算は 3 になります]

これで、MySQL で distinct メソッドを使用する詳細な例に関するこの記事は終了です。MySQL deduplication distinctive に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • SQL における 3 つの重複排除方法の概要
  • MySQLの重複排除操作を極限まで最適化する方法
  • 重複したMySQLテーブルをマージして削除する簡単な方法
  • MySQLの重複排除方法
  • MySQL における重複排除の 2 つの方法とサンプル コードの詳細な説明
  • SQL学習ノート5:重複を削除して新しく追加されたフィールドに値を割り当てる方法
  • SQL重複排除方法の概要

<<:  Docker に influxdb をインストールするための詳細なチュートリアル (パフォーマンス テスト)

>>:  条件によるMysqlカウントの複数の実装方法を詳細に解説

推薦する

Mysql GTID Mha 設定方法

Gtid + Mha + Binlog サーバー構成: 1: テスト環境OS: CentOS 6.5...

Dockerはコンテナを通じてイメージを生成し、詳細にDockerCommitを送信します

目次ローカルでコンテナを作成した後、このコンテナに基づいてローカル イメージを作成し、このイメージを...

Mysqlアカウント管理の原理と実装方法の詳細な説明

この記事では、例を使用して、MySQL アカウント管理の原則と実装方法を説明します。ご参考までに、詳...

Linux環境でIPV6接続をサポートするようにmysql5.6を設定する方法

導入:この記事では主に、Linux システムで IPV6 接続をサポートするように MySQL を構...

JavaScript でクールなマウス テーリング効果を実装

これを見た後、あなたにも手ができて、さまざまな美しい小さなしっぽを作れるようになることを保証します!...

ネイティブ js を使用してライブ バレット スクリーンのスクロール効果をシミュレートします。

目次1. 基本原則2. 特定のコード要約する1. 基本原則まず、生放送エリアを10の部分に分割し(個...

Reactは、読み込み、読み込み完了、読み込み失敗の3つの段階の原則分析を実装します。

最近ブログに書いたのですが、プロジェクトリストの中に写真がたくさんあり、最初は読み込みが遅いので、ス...

MySQL で単一のデータベースまたはテーブルを復元する方法と、起こりうる落とし穴

序文:最も一般的に使用される MySQL 論理バックアップ ツールは mysqldump です。通常...

jQuery をベースにリスト ループ スクロールを実装するためのヒント (超簡単)

良いアイデアを見つけたので記録しました。私は以前、スクロール効果を実現するためにjQueryを使用し...

MySQL binlog を使用して誤って削除されたデータベースを復元する方法

目次1 現在のデータベースの内容を表示し、データベースをバックアップする2 bin_log関数を有効...

MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル (CentOS7)

LinuxにMySQL 5.7.18をインストールする方法1. MySQLをダウンロードします。公...

ドメイン名を介してプロジェクトにアクセスするnginx + tomcatの例

ドメイン名を使ってプロジェクトにアクセスする方法が気になったのですが、自分でドメイン名を取得するのは...

Vueの監視プロパティの詳細

目次1.watchは一般的なデータ(数値、文字列、ブール値)の変更を監視します。 1. 数値2. 文...

nginx keepaliveの具体的な使い方

http1.1 プロトコルのデフォルトのリクエスト ヘッダーでは、図に示すように、デフォルトで ke...

HTML にオーディオファイルを挿入してブラウザで再生する場合の互換性の問題

HTML にオーディオ ファイルを挿入した後 (mp3 ファイルを再生した後) に発生したいくつかの...