Heim >Backend-Entwicklung >PHP-Problem >So implementieren Sie Fuzzy-Abfragen in PHP
So implementieren Sie eine Fuzzy-Abfrage in PHP: 1. Verwenden Sie den SQL-Matching-Modus und der Operator muss LIKE oder NOT LIKE verwenden. Beim Matching wird die Groß-/Kleinschreibung nicht beachtet. 2. Verwenden Sie den regulären Ausdrucks-Matching-Modus im Abgleich irgendwo im Feld.
【Verwandte Lernempfehlung: php-Programmierung(Video)】
PHP-Methode zur Implementierung von Fuzzy-Abfragen:
Methode 1: SQL-Übereinstimmungsmuster
1. Verwenden Sie SQL-Übereinstimmungsmuster. Sie können die Operatoren =
oder !=
nicht verwenden, sondern die Operatoren LIKE oder NOT LIKE. Verwenden Sie den SQL-Matching-Modus. MYSQL bietet 2 Platzhalterzeichen.
%
_
4. Verwenden Sie den SQL-Abgleichsmodus. Beim Abgleich wird die Groß-/Kleinschreibung nicht beachtet.
#查询用户名以某个字符开头的用户 #查询用户名以字符'l'开头的用户: l% SELECT * FROM user WHERE username LIKE 'l%'; #查询用户名以某个字符结尾的用户 #查询用户名以字符'e'结尾的用户:e% SELECT * FROM user WHERE username LIKE 'e%'; #查询用户名包含某个字符的用户 #查询用户名包含字符'o'的用户:%o% SELECT * FROM user WHERE username LIKE '%o%'; #查询包含三个字符的用户 SELECT * FROM user WHERE username LIKE '___'; #查询用户名第二个字符为o的用户:_o% SELECT * FROM user WHERE username LIKE '_o%';Methode 2: Abgleichsmodus für reguläre Ausdrücke oder mehr Zeichen
davor bedeutet Übereinstimmung mit einer beliebigen Anzahl von Entspricht einem beliebigen Buchstaben
[0-9] Entspricht einer beliebigen Zahl.
*
[0-9]* Entspricht einer beliebigen Zahl einer beliebigen Zahl
x*
bedeutet, mit dem Buchstaben a zu beginnen
bedeutet, mit einem bestimmten Zeichen oder einer bestimmten Zeichenfolge zu enden
oder
(RLIKE oder NOT RLIKE)^
Wie ist der obige Satz zu verstehen?
Das heißt^a
$
... Entspricht Daten, die größer oder gleich 4 Zeichen sind
#Benutzer abfragen, deren Benutzername mit dem Zeichen beginnt l: ^l; s$
SELECT * FROM user WHERE username REGEXP '^l'; #sql匹配模式写法: SELECT * FROM user WHERE username LIKE 'l%'; #查询用户名正好是三个字符的用户:^...$; #sql匹配模式写法: SELECT * FROM user WHERE username LIKE '___'; #正则表达式写法 SELECT * FROM user WHERE username REGEXP '^...$';
Verwandte Empfehlungen: REGEXP
Videokurs zum Programmieren NOT REGEXP
Das obige ist der detaillierte Inhalt vonSo implementieren Sie Fuzzy-Abfragen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!