MySQL でデータの完全一致とあいまい一致を実行するにはどうすればよいですか?

王林
リリース: 2023-07-30 10:48:18
オリジナル
2734 人が閲覧しました

MySQL でデータの完全一致とあいまい一致を実行するにはどうすればよいですか?

MySQL は、広く使用されているリレーショナル データベース管理システムです。データクエリを実行するとき、多くの場合、完全一致またはあいまい一致を実行する必要があります。この記事では、MySQL でこれら 2 つのマッチング メソッドを実行する方法を紹介し、対応するコード例を示します。

完全一致とは、クエリ結果が指定された条件のデータと完全に一致する必要があるという要件を指します。通常、等号「=」は完全一致に使用されます。以下は簡単な例です:

SELECT * FROM students WHERE name = 'John';
ログイン後にコピー

上記のコードは、「John」という名前の学生情報を返します。ここで、「name」はテーブル内の列名で、「John」は照合する値です。 「name」列の値「John」を持つ行のみが返されます。

等号の使用に加えて、「<」、「>」、「<=」、「>=」などの他の比較演算子を使用して完全一致を行うこともできます。 。以下に例を示します:

SELECT * FROM products WHERE price > 50;
ログイン後にコピー

上記のコードは、価格が 50 を超える製品情報を返します。ここで、「price」はテーブル内の列名で、50 は照合する値です。 「価格」列の値が 50 を超える行のみが返されます。

あいまい一致とは、クエリ結果が指定された条件に部分的に一致する可能性があることを意味します。ワイルドカードは、あいまい一致によく使用されます。 MySQL で一般的なワイルドカード文字には、「%」と「_」があります。 「%」は任意の長さの文字を表し、「_」は 1 文字を表します。以下に例を示します。

SELECT * FROM users WHERE email LIKE '%@gmail.com';
ログイン後にコピー

上記のコードは、Gmail メールボックスを使用するすべてのユーザー情報を返します。ここで、「email」はテーブル内の列名で、「%@gmail.com」は照合する値です。 「email」列の値が「@gmail.com」で終わる行のみが返されます。

複雑なあいまい一致に複数のワイルドカードを使用することもできます。例を次に示します。

SELECT * FROM customers WHERE phone_number LIKE '180%5_';
ログイン後にコピー

上記のコードは、携帯電話番号が「180」で始まり、最後から 2 番目の桁が「5」である顧客情報を返します。ここで、「phone_number」はテーブル内の列名で、「180%5_」は照合する値です。 「phone_number」列の値が上記の条件を満たす行のみが返されます。

クエリ エンジンは各行に対してパターン マッチングを実行する必要があるため、あいまい一致は通常、完全一致よりも効率が低いことに注意してください。したがって、あいまい一致を実行するときは、クエリ効率を向上させるために、ワイルドカードの前にあいまい一致を使用しないようにしてください。

要約すると、完全一致とあいまい一致は、MySQL で一般的に使用されるデータ一致方法です。適切な演算子とワイルドカードを使用することで、特定のニーズに基づいて正確な一致またはあいまいな一致を実行できます。これらの照合方法は、日常のデータベース クエリで非常に実用的であり、必要なデータを正確に取得するのに役立ちます。

以上がMySQL でデータの完全一致とあいまい一致を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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