Heim > Datenbank > MySQL-Tutorial > Hauptteil

Was ist eine MySQL-Fuzzy-Query-Anweisung?

烟雨青岚
Freigeben: 2020-06-16 10:45:42
Original
5637 Leute haben es durchsucht

Was ist eine MySQL-Fuzzy-Query-Anweisung?

Was ist eine MySQL-Fuzzy-Query-Anweisung?

Die Fuzzy-Abfrageanweisung lautet wie folgt: „SELECT field FROM table WHERE bestimmtes Feld Like-Bedingung“.

MySQL bietet vier Matching-Modi:

1 % steht für beliebige 0 oder mehr Zeichen.

Die folgende Anweisung:

SELECT * FROM user WHERE name LIKE ';%三%';

ändert duname in „Zhang San“, „Sanjiao „ „Katze“, „Tang Sanzang“ usw. Finden Sie alle Zeichen mit „drei“ heraus;

2. _ steht für ein beliebiges einzelnes Zeichen. Anweisung:

SELECT * FROM user WHERE name LIKE ';_三_';

Suchen Sie nur „Tang Sanzang“, sodass der Name drei Zeichen hat und das mittlere Zeichen „ Drei";

SELECT * FROM user WHERE name LIKE ';三__';

Suchen Sie nur nach „dreibeinige Katze“, sodass der Name drei Zeichen hat und das erste Zeichen „ „Drei“;

3. steht für eines der in Klammern aufgeführten Zeichen (ähnlich wie reguläre Ausdrücke).

Anweisung:

SELECT * FROM user WHERE name LIKE ';[张李王]三';

findet „Zhang San“, „李王„ „Drei“, „Wang San“ (anstelle von „Zhang Li Wang San“);

Wenn [ ] eine Reihe von Zeichen enthält (01234, abcde usw.), kann es als „0“ abgekürzt werden -4", "a-e"

SELECT * FROM user WHERE name LIKE ';老[1-9]';

findet „alt 1“, „alt 2“, .. ., „old 9“;

Wenn Sie nach dem „-“-Zeichen suchen, geben Sie es bitte zuerst ein: ';Zhang San[-1-9]';

4, [^ ] bedeutet ein einzelnes Zeichen , das nicht in Klammern aufgeführt ist.

Anweisung:

SELECT * FROM user WHERE name LIKE ';[^ 张李王]三'; "李", "王" "Zhao San", "Sun San "usw.;

SELECT * FROM user WHERE name LIKE ';老[^1-4]';

schließt „Alt 1“ bis „Alt 4“ aus, um „Alt“ zu finden 5“, „Alte 6“, ..., „Alte 9“.

Das Letzte ist der Schlüssel!

Aufgrund von Platzhaltern können unsere Abfrageanweisungen für Sonderzeichen „%“, „_“, „[“, „';“ nicht normal implementiert werden und die Sonderzeichen können in „[ ]“ eingeschlossen werden normal abgefragt werden. Darauf aufbauend haben wir die folgende Funktion geschrieben:

function sqlencode(str)
str=replace(str,"';","';';")
str=replace(str,"[","[[]") ';此句一定要在最先
str=replace(str,"_","[_]")
str=replace(str,"%","[%]")
sqlencode=str
end function
Nach dem Login kopieren

Empfohlenes Tutorial: „

MySQL-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist eine MySQL-Fuzzy-Query-Anweisung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage