MySQL でのワイルドカードを使用したファジークエリの実装に関する簡単な説明

MySQL でのワイルドカードを使用したファジークエリの実装に関する簡単な説明

MySQL データベースでは、あいまいクエリが必要な場合にワイルドカードを使用します。

まず、演算子とワイルドカードという 2 つの概念を理解しましょう。

オペレーター

Like は SQL ステートメントの演算子です。その機能は、SQL ステートメントに続く検索パターンを、直接の等価一致ではなくワイルドカードを使用して比較することを示します。

注: ワイルドカードなしで like 演算子を使用した場合、効果は等号と同じになります。

SELECT id,title FROM table WHERE title like '张三';

この書き方は張三の記録と一致することしかできず、張三が良い人であるというような記録にはならない。

ワイルドカード

% (パーセント記号) と _ (アンダースコア) はワイルドカードです。% は任意の文字が任意の回数 (0 回まで) 出現できることを意味し、_ は 1 文字を意味します。ユーザーは次のとおりです。

1 SELECT id,title FROM table WHERE title like '张三%';
2 SELECT id,title FROM table WHERE title like '%张三';
3 SELECT id,title FROM table WHERE title like '%张三%';

1 は Zhang San で始まるレコードに一致することを意味し、2 は Zhang San で終わるレコードに一致することを意味し、3 は Zhang San を含むレコードに一致することを意味します。

1 SELECT id,title FROM table WHERE title like '张三_';
2 SELECT id,title FROM table WHERE title like '__张三';

1 は Hello Zhangsan のようなレコードに一致することを意味し、2 は Hello Zhangsan のようなレコードに一致することを意味します。

使用上の注意

大文字と小文字に注意してください。あいまい一致、つまりテキストの一致を使用する場合、MySQL は大文字と小文字を区別する場合と区別しない場合があります。結果は、ユーザーが MySQL をどのように構成するかによって異なります。

末尾のスペースに注意してください。

NULL と % は任意の文字と一致しますが、NULL とは一致しないことに注意してください。

フェアユース

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

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

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

ワイルドカード文字の配置には注意してください。配置が間違っていると、期待される数値が返されない可能性があります。

これで、MySQL ワイルドカード ファジー クエリに関するこの記事は終了です。MySQL ワイルドカード ファジー クエリの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

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

<<:  Tomcat9 のダウンロード、インストール、設定 + Eclipse への統合に関する詳細なチュートリアル

>>:  JS がビデオ弾幕効果を実現

推薦する

Spark と Scala を使用して Apache アクセス ログを分析する方法

インストールまず、Java と Scala をインストールし、次に Spark をダウンロードしてイ...

Dockerのyumソースの設定とCentOS7へのインストールの詳細な説明

ここではCentOS7が使用されており、カーネルバージョンは [root@localhost ~]#...

MySQL 8.0.12 インストール設定方法とパスワード変更

この記事ではMySQL 8.0.12のインストールと設定方法を参考までに記録します。具体的な内容は以...

IE8 と Chrome でテーブルの幅を修正する方法

IE8 や Chrome で上記の設定を使用すると、画面の最大幅に合わせて表示が統一され、各列の幅は...

Vueでブラウザタイトルを動的に設定する方法の詳細な説明

目次ナンセンス文章最初ルーター/index.js 2番目1. プラグインをインストールする2.mai...

このような大画面のデジタルスクロール効果が必要になる場合があります

大画面のデジタル スクロール効果は、最近の作業における大画面 UI ダイアグラムから生まれました。U...

CSSは親コンテナのdivをimg画像で埋め、コンテナのサイズに適応します。

ページに複数の画像を導入すると、画像のサイズがばらつくことがあります。しかし、それらを一貫したサイズ...

HTML の div と span の違い (共通点と相違点)

共通点: DIV タグと SPAN タグは、コンテンツ全体を非表示にしたり、コンテンツ全体を移動した...

ページスピードの最適化の概要

インターネットは人々の生活にますます欠かせないものになってきていると思います。 Ajax や fle...

VUE+CanvasはシンプルなGobangゲームの全プロセスを実現します

序文レイアウトの点では、Gobang はランダムな動きを目的とするゲームよりも実装がはるかに簡単で、...

Vueは物流タイムライン効果を実現します

この記事では、物流タイムライン効果を実現するためのVueの具体的なコードを例として紹介します。具体的...

Dockerコンテナが停止できない問題の解決方法

解決策は次のとおりです。 1. コンテナを強制削除する docker rm -f ジェンキンス2. ...

LinuxサーバにおけるNginxとApacheの共存の実装方法の分析

この記事では、Linux サーバー上で Nginx と Apache の共存を実装する方法について説...

Vueはechart円グラフの凡例のパーセンテージを表示するメソッドを実装します

この記事では主に、echart を使用してパーセンテージを表示する Vue の円グラフデータ部分を紹...