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 は混乱するだろう: 空のテキスト ノードの高さの問題

推薦する

Linux ps および pstree コマンドの知識ポイントのまとめ

Linux の ps コマンドは Process Status の略です。 ps コマンドは、システ...

Dockerプライベートウェアハウスレジストリの導入

使用される Docker イメージが増えるにつれて、イメージを保存する場所、つまりウェアハウスが必要...

フレームウィンドウ間の関連付けとハイパーリンクのターゲット属性の使用を実装する方法

フレーム ウィンドウの関連付けを実現するには、次に示すように、ハイパーリンクの「ターゲット」ウィンド...

JavaScript におけるセミコロンの詳細

序文JavaScript ではセミコロンはオプションであり、使用するかどうかは主にコーディング スタ...

Swiper+echartsは複数のダッシュボードの左右スクロール効果を実現します

この記事では、ダッシュボードの左右スクロール効果を実現するためのスワイパー+echartsの具体的な...

CSS transform-originプロパティを理解する

序文最近、花火アニメーションを作成しました。花火が散るアニメーションです。アニメーションの実装中、花...

複数クリックを防ぐVueの実践

通常、クリック イベントは、メッセージ リマインダーのさまざまな状況に分割されます。これらが処理され...

ミニプログラムはミニプログラムクラウドを使用してWeChatの支払い機能を実装します

目次1. WeChat Payを開く1.1 アフィリエイト加盟店番号1.2 加盟店番号を追加する1....

HTML+CSS をベースにした素敵なフリップログインおよび登録インターフェースを作成します

素敵なフリップログインと登録インターフェースを作成する序文最近、ネットワーク ディスクを構築しようと...

MySQL Group by最適化の詳細な説明

目次標準的な実行プロセス最適化並べ替えを削除並べ替え成し遂げる要約する標準の Group by ステ...

ネイティブ js で呼び出し、適用、バインドを実装する方法

1. 呼び出しを実装するステップ:関数をオブジェクトのプロパティとして設定します。これを関数に割り当...

SQLはLeetCodeを実装します(180.連続した数字)

[LeetCode] 180. 連続した数字少なくとも 3 回連続して出現するすべての数字を検索す...

Linux に Python 3.8.1 をインストールするための詳細なチュートリアル

この例では、Linux への Python 3.8 のインストールを例に挙げます。 1. 依存パッケ...

Reactはtodolistの追加、削除、変更、クエリを実装します

目次ToDoリストを例に挙げましょうディレクトリは次のとおりですアプリ入力.jsリスト.jsアイテム...

Ubuntu 20.04 をインストールした後に行うべきこと (初心者向けガイド)

Ubuntu 20.04 がリリースされ、多くの新機能が導入されましたが、慣れていない機能も多くあ...