MySQL で '%' を含むフィールドをクエリする方法の詳細な説明 (ESCAPE の使用法)

MySQL で '%' を含むフィールドをクエリする方法の詳細な説明 (ESCAPE の使用法)

SQLのlike文では、例えば

SELECT * FROM user WHERE username LIKE '%luchi%'
SELECT * FROM user WHERE username LIKE '_luchi_',
  • %ワイルドカードとして複数一致させる
  • _ をワイルドカードとして

しかし、like でクエリするフィールドに % が含まれている場合は、どのように確認すればよいでしょうか。

このとき、フィールド内の「%」がワイルドカードとして使用されていないことを指定する必要があります。
ここではESCAPEエスケープを使用する必要があります

テスト:

ここではこの表を使用します

lc

脱出する前に:

SELECT * FROM user WHERE username LIKE '%%%'; 


ここでは、3 つの % 記号がすべてワイルドカードとして扱われていることがわかります。

脱出後:

SELECT * FROM user WHERE username LIKE '%1%%' ESCAPE '1'; 


クエリが成功しました

注記:

  • ESCAPE の後に文字が続き、その中に書かれているのがエスケープ文字です。
  • 次に、C 言語のエスケープ文字 ('\n'、'\t' など) と同様に、エスケープする必要がある % 記号の前にこの文字を記述します。

ヒントと提案:

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

  • ワイルドカードを過度に使用しないでください。他の演算子で同じ目的を達成できる場合は、他の演算子を使用する必要があります。
  • ワイルドカードを使用する必要がある場合は、絶対に必要な場合を除き、検索パターンの先頭で使用しないでください。検索パターンの先頭にワイルドカードを配置すると、検索速度は最も遅くなります。
  • ワイルドカード文字の配置に注意してください。間違った場所に配置すると、期待した数値が返されない可能性があります。

これで、MySQL のようなクエリを使用して '%' を含むフィールドをクエリする方法 (ESCAPE の使用法) に関するこの記事は終了です。MySQL のようなクエリ % の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL における ESCAPE キーワードの使用法の詳細な説明
  • mysql_escape_string() 関数の使用法の分析
  • MySqlエスケープの詳細な使用例

<<:  ブラインドの特殊効果を実現するネイティブJS

>>:  Nginx SSL証明書設定エラーの解決策

推薦する

CocosCreatorでゲームコントローラーを使用する方法

目次1. シーンレイアウト2. ハンドルリスナーを追加する1. イベントの変更を監視する2. 座標設...

MySQL mysqladmin クライアントの使用の概要

目次1. サーバーの状態を確認します。 2. ルートパスワードを変更します。 3. mysqlser...

アップロード画像コントロールを実現するネイティブ js

この記事の例では、アップロード画像コントロールを実装するためのjsの具体的なコードを参考までに共有し...

Vueプロジェクトでlessを使用するためのヒント

目次序文1. スタイルの浸透1. パターン浸透とは何ですか? 2. 使い方は? 2. ミキシング1....

CentOS 7 での Nginx ログタイミング分割の実装手順の詳細説明

1. 分割スクリプト (splitNginxLog.sh) を作成します。 * この例では、ログ分割...

React-Native環境のセットアップと基本的な紹介

環境の準備1. 環境構築React Native 中国語ウェブサイト2. 開発ツール フロントエンド...

Windows での mysql-5.7.28 のダウンロード、インストール、および構成に関する詳細なグラフィックとテキストのチュートリアル

最近MySQLデータベースのバージョンを変更する必要があり、それを記録するために記事を書きます1. ...

Docker可視化ツールPortainerの導入と中国語翻訳

#docker 検索#docker プルポーター1. イメージを取得した後、中国語パッケージをダウン...

Linux システムでの gcc コマンドの使用法の詳細な説明

目次1. 前処理2. コンパイル3. コンパイル4. リンク1. gccのインストール(Ubuntu...

Linux サーバーのスクリプトを自動的にバックアップする方法 (mysql、添付ファイルのバックアップ)

1.backup.shスクリプトファイルを作成する #!/bin/sh ソースフォルダ=/データ ...

MySQL 5.7 でブロックポジショニング DDL の問題を解決する

前回の記事「MySQL テーブル構造の変更、メタデータ ロックを知っておく必要があります」では、MD...

CocosCreatorゲームにおける魚群アルゴリズムの詳細な説明

序文最近CocosCreatorを学びたいと思ったので、エディターをダウンロードして起動しました。誰...

Vue 組み込みコンポーネントのキープアライブでの LRU アルゴリズムの使用

目次Vue の keep-alive 組み込みコンポーネントの使用でもこのアルゴリズムが使用されます...

HTMLは読み取り専用のテキストボックスを実装しており、コンテンツを変更することはできません。

さっそく、コードを直接投稿します。具体的なコードは次のとおりです。 <!--方法 1: onf...

Nginx を使用して DoNetCore を Alibaba Cloud にデプロイする方法

基本的な環境設定まずはご自身でドメイン名とサーバーを購入してくださいクラウドサーバーECSに基づいて...