mysql ワイルドカード (sql 高度なフィルタリング)

mysql ワイルドカード (sql 高度なフィルタリング)

まず、値の一部と一致させるために使用される特殊文字であるワイルドカードについて簡単に紹介します。

search patternリテラル値、ワイルドカード文字、またはその両方の組み合わせで構成される検索条件。

ワイルドカードは演算子を補足するものです。演算子は確定しますが、ワイルドカードはあいまいです。

以下にいくつか例を挙げます。

% ワイルドカード:

製品から*を選択
WHERE products.prod_name LIKE 'jet%'


この % は、先行する文字が任意の回数出現することを意味します。

この例では、検索式'jet%'を使用します。この句を実行すると、 jetで始まるすべての単語が検索されます。 % 、文字数に関係なく、jet の後の任意の文字を受け入れるようにMySQL指示します。

大文字と小文字の区別MySQLの設定によっては、検索で大文字と小文字が区別される場合があります。大文字と小文字を区別すると、 'jet%' JetPack 1000と一致しなくなります。

別のアカウントの例を見てみましょう。

製品から*を選択
products.prod_name が '%anvil%' のように指定されているかどうか


上記は、文字anvilを含むすべてのprod nameが一致することを意味します。

もう一度、別の例を挙げます。

製品から*を選択
WHERE products.prod_name LIKE 's%e'


つまり、s で始まり e で終わるすべてのprod nameが一致することになります。

% 1 つ以上の文字に加えて 0 個の文字に一致する可能性があることに注意することが重要です。 %
検索パターン内の特定の位置にある 0、1、またはそれ以上の文字を表します。

注意 末尾のスペース 末尾のスペースはワイルドカードの一致を妨げる可能性があります。例えば、保存ワード
anvil場合、その後に1つ以上のスペースが続くと、 WHERE
prod_name LIKE '%anvil'末尾に l があるため一致しません。
の後に余分な文字があります。この問題を解決する簡単な方法は、検索パターンの末尾に % を追加することです。

注: NULL % ワイルドカード文字は何にでも一致するように見えますが、例外が 1 つあります。それはNULLです。 WHERE prod_name LIKE '% ' でも、製品名として値NULL使用する行には一致しません。

もう一つの便利なワイルドカード文字はアンダースコア(_)です。アンダースコア文字は % と同じ目的を持ちますが、複数の文字ではなく 1 つの文字に一致します。

製品から*を選択
WHERE products.prod_name LIKE '_ ton anvil'

上記の_は任意の文字を表します。

0文字に一致する%とは異なり、 _常に 1 文字に一致し、それ以上でもそれ以下でもありません。

ご覧のとおり、 MySQLワイルドカードは非常に便利です。ただし、この機能にはコストがかかります。ワイルドカード検索は通常、前述の他の検索よりも処理に時間がかかります。ワイルドカードを使用する際に覚えておくべきヒントをいくつか紹介します。

ワイルドカードを過度に使用しないでください。他の演算子で同じ目的を達成できる場合は、他の演算子を使用する必要があります。

ワイルドカードを使用する必要がある場合は、絶対に必要な場合を除き、検索パターンの先頭で使用しないでください。検索パターンの先頭にワイルドカードを配置すると、検索速度は最も遅くなります。

これで、MySQL ワイルドカード (SQL 高度なフィルタリング) に関するこの記事は終了です。MySQL ワイルドカードに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL ファジークエリの使用法 (通常、ワイルドカード、組み込み関数)
  • MySQL データベースのステートメント ワイルドカード ファジー クエリの概要
  • Mysql | ワイルドカード(%、_ など)を使用したファジークエリの詳細な説明
  • MySQL でのワイルドカードを使用したファジークエリの実装に関する簡単な説明
  • MySQL ファジークエリにおけるワイルドカードエスケープについての簡単な説明
  • MYSQL 必読ノート 第 8 章: フィルタリングにワイルドカードを使用する
  • MySQLでワイルドカードを使用する際の注意点
  • MySql のファジークエリワイルドカードの使用に関する詳細な紹介
  • mysql 正規表現 LIKE ワイルドカード

<<:  canvas.toDataURL image/png エラー処理方法の推奨

>>:  IE6/7 は混乱するだろう: 空のテキスト ノードの高さの問題

推薦する

設定ファイルを変更した後、操作を再開します

余計なことは言わないで、コードだけ見てみましょう〜 # docker-compose をダウン # ...

Navicateを使用してAlibaba Cloud Server上のMySQLに接続する

1. まず、サーバーの mysql にアクセスして権限を変更します。 GRANT オプション付きで、...

DockerコンテナでArthasを使用するための詳細な手順

Arthas はあなたのために何ができるでしょうか? Arthas 、開発者に深く愛されている Al...

Docker で onlyoffice をインストールして展開する詳細なプロセス

0. システム要件CPU I5-10400F以上メモリ 16 GB、32 GBのメモリが最適ハードド...

負荷分散と動的・静的分離を実現するNginx+Tomcatの原理の分析

1. Nginx ロードバランシングの実装原理1. Nginxはリバースプロキシを通じて負荷分散を実...

Linux システムにおける時間設定の概要

1. 時間の種類は次のように分けられます。 1. ネットワーク時間(タイムゾーンの設定、ntpサーバ...

MySQL 8.0 の非表示インデックスの詳細な説明

言葉MySQL 8.0 は最初のバージョンから 4 年を経てリリースされました。バージョン 8.0 ...

mysqldump でデータベースをバックアップするときに特定のライブラリを除外する例

例: mysqldump –all-databases を使用すると、すべてのライブラリがエクスポー...

色の16進数カラーコード表表示と16進値の比較表示で簡単に検索できます

さまざまな色の16進コード表[パート1] 赤とピンク、およびそれらの 16 進コード。 #99003...

MySQL関数の包括的な概要

目次1. MySQLでよく使われる文字列関数2. 数値関数3. 日付と時刻の機能4. プロセス機能5...

Docker Machineの詳細な説明

Docker と Docker Machine の違いDocker はクライアント サーバー アーキ...

Docker はクラスター MongoDB 実装手順を構築します

序文会社の業務上のニーズにより、独自の MongoDB サービスを構築する予定です。MongoDB ...

VMware Workstation のインストール (Linux カーネル) Kylin グラフィック チュートリアル

この記事では、VMware WorkstationにKylinをインストールする方法を参考までに紹介...

Videojs+swiper が Taobao の商品詳細カルーセルを実現

この記事では、Taobao商品詳細のカルーセルを実現するためのvideojs+swiperの具体的な...

MySQL 5.7.20 の解凍バージョンをインストールするための詳細な手順 (2 つの方法)

Windows 64ビットでのMySQLのインストールについて説明します。5.7以降、MySQLの...