ホームページ >データベース >mysql チュートリアル >mysqlで一意のデータを取得するにはどうすればよいですか?
mysql では、クエリ ステートメントに unique キーワードを追加して重複レコードをフィルタリングし、一意のデータを取得できます。構文は「select unique field name from data table;」です。
一意のデータを取得するための Mysql メソッド:
重複レコードをフィルター処理するためにクエリ ステートメントに個別のキーワードを追加します
構文:
select distinct 字段名 from 数据表;
distinct の役割
mysql では、distinct キーワードの主な機能は、1 つ以上のデータベース テーブルを変更することです。複数のフィールドの重複データをフィルターし、1 つのデータのみをユーザーに返します。Distinct は選択でのみ使用できます。
distinct
distinct の原則が使用されます重複を削除します。主な原則は、最初に重複排除するデータをグループ化し、次にグループ化された各グループから 1 つのデータをクライアントに返すことです。このグループ化プロセス中に 2 つの異なる状況が発生する可能性があります:
distinct 依存フィールドにはすべてインデックスが含まれています:
この場合、mysql はインデックスを操作して条件を満たすデータを直接グループ化し、グループ化された各データからデータを 1 つ削除します。
distinct 依存フィールドのすべてにインデックスが含まれているわけではありません:
この場合、インデックスでは重複排除とグループ化のプロセス全体を満足させることができないため、一時テーブルを作成する必要があります。 MySQL では、まず、条件を満たすデータを一時テーブルに配置し、次に一時テーブル内のデータのこの部分をグループ化し、次に一時テーブル内のグループ化された各データからデータを 1 つ削除する必要があります。一時テーブルの場合、データは追加されません。データはソートされます。
distinct の使用法
distinct を使用するための構文は次のとおりです。
select distinct expression[,expression...] from tables [where conditions];
注意すべき主な点Different を使用する場合は次の点に注意してください。
フィールドの重複を排除するときは、distinct がすべてのフィールドの先頭にあることを確認してください。
unique キーワード 後で複数のフィールドがある場合、複数のフィールドは結合されて重複排除されます。複数のフィールドの結合された値が等しい場合にのみ重複排除されます
以下では使用しますこのキーワードの使用法について全員の理解を深めるために、開発プロセス中に頻繁に遭遇する、distinct に関するいくつかの例を示します。
データベースのテーブル構造とデータは次のとおりです。
単一フィールドの重複排除 SQL:
select distinct age from user;
クエリ結果
age 10 20 30
複数フィールドの重複排除 SQL:
select distinct name,age from user;
クエリ結果
nameage One10 Zero20 Two20 Four30 One30
複数のフィールドの重複を排除してカウントを見つけるための SQL:
select count(distinct name,age) as total from user;
クエリ結果
total 5
重複排除選択 *
select distinct * from user;
* はすべてのフィールドを表すため、この SQL は、ユーザーから個別の ID、名前、年齢、署名を選択するのと同じセマンティクスを持ちます。
クエリ結果:
id name age sign 1 One 10 梦想要有的,万一实现了呢 2 Zero 20 http://www.chaoshizhushou.com 3 Two 20 OneZeroTwoFour 4 Four 30 加油 5 One 30 学习才是硬道理 6 Four 30 一日三省吾身
推奨チュートリアル: mysql ビデオ チュートリアル
以上がmysqlで一意のデータを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。