ホームページ  >  記事  >  データベース  >  MySQL Advanced (6) ファジークエリの 4 つの使い方の紹介

MySQL Advanced (6) ファジークエリの 4 つの使い方の紹介

黄舟
黄舟オリジナル
2017-02-09 15:22:42962ブラウズ

mysqlのファジークエリの4つの使い方の紹介

この記事では主にMySQLのファジークエリの4つの使い方を紹介しますので、必要な方は参考にしてください。

以下では、mysql でのファジー クエリの 4 つの使用法を紹介します:

1 %:

は 0 個以上の任意の文字を表します。任意のタイプおよび長さの文字に一致します。場合によっては、中国語の場合は 2 つのパーセント記号 (%%) を使用して表現してください。

たとえば、 SELECT * FROM [user] WHERE u_name LIKE '%三%'

は、u_name を「Zhang San」、「Zhang Cat San」、「Three-legged Cat」、「Tang Sanzang」などとして扱います。 「3つ」あります すべてのレコードを見つけてください。

さらに、u_name に「三」と「猫」の両方を含むレコードを検索する必要がある場合は、and 条件を使用してください

SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'

SELECT * FROM [user] WHERE u_name LIKE '%三%cat%' を使用する場合

「三本足の猫」は検索できますが、条件に合う「張猫さん」は検索できません。

2_:

は任意の 1 文字を表します。単一の任意の文字と一致します。これは、式の文字長を制限するためによく使用されます。

たとえば、 SELECT * FROM [user] WHERE u_name LIKE '_三_'

u_name が 3 になるように、「Tang Sanzang」のみを検索します。 1 つの単語は「三」です

別の例は、名前に 3 文字が含まれるように「three-legged cat」のみを検索します。最初の文字は "三" ";

3 [ ]:

は括弧内にリストされた文字の 1 つを表します (正規表現と同様)。文字、文字列、または範囲を指定し、一致するオブジェクトがそれらのいずれかであることを要求します。

たとえば、 SELECT * FROM [user] WHERE u_name LIKE '[Zhang Li Wang] San' では、(「Zhang Li Wang San」ではなく) 「Zhang San」、「Li San」、「Wang San」が検索されます。

[ ] に一連の文字 (01234、abcde など) が含まれる場合、「0-4」、「a-e」と省略できます

SELECT * FROM [user] WHERE u_name LIKE '老[1-9]' 将找出“老1”、“老2”、……、“老9”;

4 [^ ] :


はリストにない単一の文字を表します括弧 。その値は [] と同じですが、一致するオブジェクトが指定された文字以外の文字である必要があります。

たとえば、SELECT * FROM [user] WHERE u_name LIKE '[^Zhang Li Wang] San' とすると、姓が「Zhang」、「Li」、「Zhang」、「Li」、「Zhang Li Wang」以外の「Zhao San」、「Sun San」などが検索されます。 "Wang";

SELECT * FROM [user] WHERE u_name LIKE '老[^1-4]'; 将排除“老1”到“老4”,寻找“老5”、“老6”、……


5 クエリの内容にワイルドカードが含まれている場合

ワイルドカードのため、特殊文字 "%"、"_"、および "[" のクエリは正常に実装できず、特殊文字は囲まれています。 "[ ]" 内 これ以降は通常どおりクエリを実行できます。これに基づいて、次の関数を作成します:

function sqlencode(str) str=replace(str,"';","';';")

str=replace(str,"[","[[]") ';この文は最初に来る必要があります str=replace(str,"_","[_] ") str=replace(str,"%","[%]") sqlencode=str end function


上記は、mysql の上級 (6) ファジークエリの 4 つの使い方の内容です。コンテンツ PHP 中国語 Web サイト (www.php.cn)!


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。