mysqlステートメントでのlikeの使用法は何ですか?

coldplay.xixi
リリース: 2020-10-29 16:23:15
オリジナル
27231 人が閲覧しました

mysql ステートメントでの like の使用: 1. [%] と一緒に使用し、[%] は 1 つ以上の文字のワイルドカード文字を表します; 2. [_] と一緒に使用し、[_] はワイルドカードを表しますたった1文字のキャラクター。

mysqlステートメントでのlikeの使用法は何ですか?

mysql ステートメントでの同様の使用法:

1. 一般的な使用法:

(1) % と併用します。

% は、フィールド名の big で始まるデータのクエリなど、1 つ以上の文字のワイルドカード文字を表します。

(2) _ と併用します。

# は 1 文字だけのワイルドカード文字を表します。上記のクエリ文の % を _ に変更すると、1 つのデータのみをクエリできることがわかります。

2. データ量が多い場合、ファジー クエリのようなものを使用すると、インデックスの失敗やパフォーマンスの問題が発生します。

(1) % または __

# で始まるファジー クエリは避けるようにしてください。 ##実行計画の説明により、ファジークエリのような場合、クエリが%と_で始まらない場合でもインデックスは有効であることがわかりました。

(2) カバリングインデックスを使用する

クエリ条件とクエリ結果がインデックス内のフィールドである場合、このインデックスをカバリングインデックスと呼びます。このとき、ファジィクエリインデックスと同様に使用します。効果的。

InnoDB の主キーをインデックスに追加する必要はありません

注: カバリング インデックスを使用する場合、フィールドの長さは要件によって制限されます。それを超えると、インデックスは失敗します

クエリに説明フィールドが含まれる場合、カバーするインデックスも無効になります。

mysqlステートメントでのlikeの使用法は何ですか?

#拡張情報

like ステートメントの構文形式は次のとおりです。 select * from table name where フィールド名 like 対応する値 ( substring )、これは主に文字フィールド用であり、その機能は文字フィールド列内の対応する部分文字列を取得することです。

1. % 0 個以上の文字を含む文字列:

1. like'Mc%' は、Mc という文字で始まるすべての文字列 (McBadden など) を検索します。

2. like'%inger' は、inger という文字で終わるすべての文字列 (Ringer、Stringer など) を検索します。

3. like'%en%' は、任意の位置に文字 en を含むすべての文字列 (Bennet、Green、McBadden など) を検索します。

2. :_ (アンダースコア) 任意の 1 文字:

like'_heryl' は、heryl という文字で終わるすべての 6 文字の名前 (Cheryl、Sheryl など) を検索します。

3. [ ] は範囲 ([a-f]) またはセット ([abcdef]) 内の任意の 1 文字を指定します:

1、like'[CK]ars[eo]n' は次の文字列を検索します: Carsen、Karsen、Carson、および Karson (Carson など)。

2. like'[M-Z]inger' は、文字列 inger で終わり、M から Z までの任意の 1 文字で始まるすべての名前 (Ringer など) を検索します。

以上がmysqlステートメントでのlikeの使用法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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