So verwenden Sie reguläre Ausdrücke in MySQL
前言
有时候使用MySQL进行数据库查询数据的时候,like查询存在局限性,这时候就可以使用MySQL中的正则表达式查询的方式。
正则表达式是用来匹配文本的特殊的串(字符集合),将一个模式(正则表达式)与一个文本串进行比较。
从文本文件中提取电话号码
查找名字中间带有数字的文件
文本块中重复出现的单词
替换页面的URL为这些URL的实际链接(一个或两个正则表达式)
LIKE和REGEXP的区别
LIKE匹配整个列(like是模糊查询),如果被匹配的文本仅在列值中出现,LIKE并不会找到它,相应的行也不会返回(当然,使用通配符除外)
REGEXP在列值内进行匹配,如果被匹配的匹配的文本在列值中出现,REGEXP将会找到它,相应的行将被返回,这时一个非常重要的差别(当然,如果适应定位符号^和$,可以实现REGEXP匹配整个列而不是列的子集)
例如:
查询一个表name列含有chen字符串的数据,两条sql语句如下
select * from stu_info where name like '小白'; select * from stu_info where name regexp '小白';
第一条的查询结果是name值等于’小白‘的数据,而第二条的查询结果是name中包含’小白’的数据,也可以用like(模糊查询+通配符)来实现regexp查询结果。
OR进行匹配
select column from table where column regexp 'X|Y' order by column; select column from table where column regexp '[XY]test' order by column;
第一种写法会将|应用于整个串,只要字符串中有X或Y的数据,都将被检索出来
第二种写法只将[XY]应用于搜索模式的开头处
匹配范围
([])集合可以用来定义要匹配的一个或多个字符,比如[0123456789],为了简化这种类型的集合,可使用(-)来定义一个范围,即[0-9],[a-z]
匹配特殊字符
则表达式由具有特定含义的特殊字符构成;如果要匹配这些特殊字符,就需要用\为前导,这种处理方式就是所谓的转义(escaping),正则表达式内具有特殊意义的所有字符都必须以这种方式转义;(为了匹配反斜杠{}字符本身,需要使用\\)
注意:多数正则表达式实现使用单个反斜杠转义特殊字符,以便能够使用这些字符本身,而MySQL要求两个反斜杠(MySQL自己解释一个,正则表达式库解释一个)
匹配字符类
有时候需要检索出我们需要的数字、所有字母字符或所有数字字母字符等的匹配,我们可以使用预定义的字符集,称为字符类。
匹配多个实例
有时候需要对匹配的数目进行更强的控制,比如:寻找所有的数,不管数中包含多少数字,或寻找一个单词并尾随一个s(如果存在)等情况,我们可以利用正则表达式中的重复元字符来完成。
select column from table where column regexp '\\([0-9] sticks?\\)' order by column;
上面的正则表达式‘\([0-9] sticks?\)’意为:\匹配([0-9]匹配任意数字,这里指匹配的数值范围,sticks?匹配stick和sticks{?使s可选,因为?匹配它前面任何字符的0或者1次出现})。
定位符
有时候为了匹配特定位置的文本,需要使用定位符,常用定位符列表如下:
找出一个以一个数(包括小数点开始的数)开始的所有数值,简单搜索[0-9\.]或([[:digit:]\.])不行,因为它将在文本内任意位置查找匹配,可以使用^定位符,如下:
select column from table where column regexp '^[0-9\\.]' order by column;
^有两种用法
在集合中(用[和]定义),用它来否定该集合
用来指串的开始处
使regexp和like起相同作用:like匹配整串二regexp匹配子串,可以利用定位符,用^开始每个表达式,用$结束每个表达式,就可以使regexp和like作用一样。
查询admin表中的group字段,数据格式为:1,2,3;4,5,6;1,87,101
例如查询101:
select * from xin_admin where `group` REGEXP '[,|;]?101[,|;]?';
附:Mysql字符串截取 和 截取字符进行查询
一、MySQL中字符串的截取
MySQL中有专门的字符串截取函数:其中常用的有两种:substring_index(str,delim,count) 和concat
1.substring_index(str,delim,count) 函数的使用较为普遍。
Die Reihenfolge innerhalb der Funktionsklammern ist: die zu trennende und abzufangende Zeichenfolge (z. B. „aaa_bbb_ccc“), das Trennzeichen (z. B. „_“) und die Position (die angibt, an welcher Trennlinie sich befindet, z. B.: „ 1").
count ist eine positive Zahl, dann beginnt die Zählung von links, und die Funktion gibt die Zeichenfolge links vom Zähltrennzeichen zurück.
count ist eine negative Zahl, dann beginnt die Zählung von rechts. und die Funktion gibt den count-th zurück. Alles rechts vom Trennzeichen
-
count kann 0 sein und wird zurückgegeben.
?? aa_bbb_ccc" ,"_",-2),"_",1), zurückgegeben als bbb;
2.concat soll mehrere Zeichenfolgen verbinden
Beispiel: concat(‘m’,’y’, &rsquo ;s’,’q’,’l’);
Return: mysql
2. Fragen Sie alle Daten ab, die dieses Zeichen enthalten, basierend auf einem Feld in der Tabelle1.find_in_set: SELECT * FROM user WHERE find_in_set(‘Wu’,name);
Fragen Sie alle Daten ab, deren Name „Wu“ in der Benutzertabelle enthält2.REGEXP: SELECT * FROM user WHERE name REGEXP ‘(‘Wu’| ‘Liu’ )’;
Verwenden Sie reguläre Regeln, um Daten abzufragen, die Liu oder Wu enthalten
Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Ausdrücke in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

Redis verwendet eine einzelne Gewindearchitektur, um hohe Leistung, Einfachheit und Konsistenz zu bieten. Es wird E/A-Multiplexing, Ereignisschleifen, nicht blockierende E/A und gemeinsame Speicher verwendet, um die Parallelität zu verbessern, jedoch mit Einschränkungen von Gleichzeitbeschränkungen, einem einzelnen Ausfallpunkt und ungeeigneter Schreib-intensiver Workloads.

MySQL und SQL sind wesentliche Fähigkeiten für Entwickler. 1.MYSQL ist ein Open -Source -Relational Database Management -System, und SQL ist die Standardsprache, die zum Verwalten und Betrieb von Datenbanken verwendet wird. 2.MYSQL unterstützt mehrere Speichermotoren durch effiziente Datenspeicher- und Abruffunktionen, und SQL vervollständigt komplexe Datenoperationen durch einfache Aussagen. 3. Beispiele für die Nutzung sind grundlegende Abfragen und fortgeschrittene Abfragen wie Filterung und Sortierung nach Zustand. 4. Häufige Fehler umfassen Syntaxfehler und Leistungsprobleme, die durch Überprüfung von SQL -Anweisungen und Verwendung von Erklärungsbefehlen optimiert werden können. 5. Leistungsoptimierungstechniken umfassen die Verwendung von Indizes, die Vermeidung vollständiger Tabellenscanning, Optimierung von Join -Operationen und Verbesserung der Code -Lesbarkeit.

Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

Eine effektive Überwachung von Redis -Datenbanken ist entscheidend für die Aufrechterhaltung einer optimalen Leistung, die Identifizierung potenzieller Engpässe und die Gewährleistung der Zuverlässigkeit des Gesamtsystems. Redis Exporteur Service ist ein leistungsstarkes Dienstprogramm zur Überwachung von Redis -Datenbanken mithilfe von Prometheus. In diesem Tutorial führt Sie die vollständige Setup und Konfiguration des Redis -Exporteur -Dienstes, um sicherzustellen, dass Sie nahtlos Überwachungslösungen erstellen. Durch das Studium dieses Tutorials erhalten Sie voll funktionsfähige Überwachungseinstellungen
