Heim Datenbank MySQL-Tutorial MySQL正则表达式初步_MySQL

MySQL正则表达式初步_MySQL

Jun 01, 2016 pm 01:17 PM
表达式

正则表达式

我们知道,在SQL之中,可以用 like 这个谓词(表达式) 来进行模糊检索,并支持 %,?,_等占位符.
但是,这个模糊检索的功能有很多限制,简单来说就是太模糊了。
在MySQL中提供了 REGEXP 关键字来支持正则表达式,当然,只是一些很简单的正则啦。
首先,我们构造一些测试数据。
-- 建表USE test;DROP TABLE IF EXISTS t_regcustomer;CREATE TABLE t_regcustomer (	id INT(10) AUTO_INCREMENT	,name VARCHAR(256)	,age INT(10)	, PRIMARY KEY(id)) COLLATE='utf8_general_ci' ENGINE=InnoDB;
Nach dem Login kopieren
增加一些测试数据:
-- 插入一些测试数据:TRUNCATE TABLE t_regcustomer;INSERT INTO t_regcustomer(name, age) VALUES ('王明',20);INSERT INTO t_regcustomer(name, age) VALUES ('王大',21);INSERT INTO t_regcustomer(name, age) VALUES ('小王',22);INSERT INTO t_regcustomer(name, age) VALUES ('小王2',22);INSERT INTO t_regcustomer(name, age) VALUES ('敲不死',23);INSERT INTO t_regcustomer(name, age) VALUES ('憨憨',24);INSERT INTO t_regcustomer(name, age) VALUES ('憨憨2',24);INSERT INTO t_regcustomer(name, age) VALUES ('郭靖名',25);INSERT INTO t_regcustomer(name, age) VALUES ('郭靖2',25);INSERT INTO t_regcustomer(name, age) VALUES ('郭靖3',25);INSERT INTO t_regcustomer(name, age) VALUES ('郭得缸',25),('大鹏',20),('大鹏2',20),('大鹏3',20),('二鹏',19),('鹏鹏',18),('鹏鹏1',18),('小鹏',17),('AAA',17),('aaa',17),('SS',17),('s2',17),('ss',17);
Nach dem Login kopieren

1. 最简单的查询:
SELECT *FROM t_regcustomer;
Nach dem Login kopieren
2. 指定列名查询
SELECT c.id, c.name, c.ageFROM t_regcustomer c;
Nach dem Login kopieren
3. 对查询结果排序
SELECT c.id, c.name, c.ageFROM t_regcustomer cORDER BY c.age ASC;
Nach dem Login kopieren
4. like 模糊检索
%匹配任意数量(0~n)的任意字符
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name LIKE '%鹏%'ORDER BY c.age ASC;
Nach dem Login kopieren
5. regexp 关键字
.匹配任意一个字符
注意此处因为没有起始(^)和结束($)限定符,所以只要列中出现的行都会被检索出来.
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP '.鹏.'ORDER BY c.age ASC;
Nach dem Login kopieren
6. 正则起始限定符
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP '^王'ORDER BY c.age ASC;
Nach dem Login kopieren
7. 大小写敏感
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP BINARY '^s'ORDER BY c.age ASC;
Nach dem Login kopieren
8. 正则或运算
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP BINARY 'a|s'ORDER BY c.name ASC;
Nach dem Login kopieren
9. 组运算正则
[123] 表示 1、2、3这3个数字之一出现即可
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP BINARY '鹏[123]'ORDER BY c.name ASC;
Nach dem Login kopieren
[1-9] 匹配 1、2、3、.... 8、9
SELECT c.id, c.name, c.ageFROM t_regcustomer cWHERE c.name REGEXP BINARY '鹏[1-9]'ORDER BY c.name ASC;
Nach dem Login kopieren
10. 转义
使用 //
可以转义 /.[]()?-| 以及分页,换行符号等

11.更多内容

请查阅 《MySQL必知必会》 68页 正则表达式


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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie behebt man Fehler in der Python-Ausdruckssyntax? Wie behebt man Fehler in der Python-Ausdruckssyntax? Jun 24, 2023 pm 05:04 PM

Python ist als High-Level-Programmiersprache einfach zu erlernen und zu verwenden. Sobald Sie ein Python-Programm schreiben müssen, werden Sie unweigerlich auf Syntaxfehler stoßen, und Fehler in der Ausdruckssyntax kommen häufig vor. In diesem Artikel besprechen wir, wie Fehler in der Ausdruckssyntax in Python behoben werden. Fehler in der Ausdruckssyntax gehören zu den häufigsten Fehlern in Python und werden normalerweise durch eine falsche Verwendung der Syntax oder das Fehlen notwendiger Komponenten verursacht. In Python bestehen Ausdrücke normalerweise aus Zahlen, Zeichenfolgen, Variablen und Operatoren. am häufigsten

In C und C++ wird Komma zum Trennen von Ausdrücken oder Anweisungen verwendet In C und C++ wird Komma zum Trennen von Ausdrücken oder Anweisungen verwendet Sep 09, 2023 pm 05:33 PM

In C oder C++ hat das Komma "," unterschiedliche Verwendungszwecke. Hier erfahren wir, wie man sie nutzt. Kommas als Operatoren. Der Kommaoperator ist ein binärer Operator, der den ersten Operanden auswertet, das Ergebnis verwirft, dann den zweiten Operanden auswertet und den Wert zurückgibt. Der Kommaoperator hat in C oder C++ die niedrigste Priorität. Beispiel #include<stdio.h>intmain(){ intx=(50,60); inty=(func1(),func2());} Hier wird x 60 zugewiesen. Für die nächste Anweisung wird func1( zuerst ausgeführt

Einführung in Exponentialfunktionsausdrücke in der Sprache C Einführung in Exponentialfunktionsausdrücke in der Sprache C Feb 18, 2024 pm 01:11 PM

Einführung in das Schreiben von Exponentialfunktionsausdrücken in der C-Sprache und Codebeispiele. Was ist eine Exponentialfunktion? Die Exponentialfunktion ist ein häufiger Funktionstyp in der Mathematik. Sie kann in der Form f(x)=a^x ausgedrückt werden a ist die Basis und x ist der Exponent. Exponentialfunktionen werden hauptsächlich verwendet, um exponentielles Wachstum oder exponentiellen Abfall zu beschreiben. Codebeispiel einer Exponentialfunktion In der Sprache C können wir die Funktion pow() in der Mathematikbibliothek verwenden, um die Exponentialfunktion zu berechnen. Das Folgende ist ein Beispielprogramm: #include

Lambda-Ausdruck in Java Lambda-Ausdruck in Java Jun 09, 2023 am 10:17 AM

Lambda-Ausdrücke in Java Mit der Veröffentlichung von Java 8 sind Lambda-Ausdrücke zu einem der am meisten besorgniserregenden und diskutierten Themen unter Java-Entwicklern geworden. Lambda-Ausdrücke können die mühsamen Schreibmethoden von Java-Programmierern vereinfachen und außerdem die Lesbarkeit und Wartbarkeit von Programmen verbessern. In diesem Artikel werden wir uns eingehend mit Lambda-Ausdrücken in Java befassen und wie sie ein einfacheres und intuitiveres Programmiererlebnis in Java-Code ermöglichen.

Durchlaufen Sie eine Sammlung mithilfe von Lambda-Ausdrücken Durchlaufen Sie eine Sammlung mithilfe von Lambda-Ausdrücken Feb 19, 2024 pm 07:32 PM

Ein Lambda-Ausdruck ist eine anonyme Funktion, die bequem zum Durchlaufen einer Sammlung verwendet werden kann. In diesem Artikel stellen wir vor, wie man Lambda-Ausdrücke zum Durchlaufen von Sammlungen verwendet, und stellen spezifische Codebeispiele bereit. In Python lautet das Syntaxformat eines Lambda-Ausdrucks wie folgt: Lambda-Parameterliste: Die Parameterliste eines Ausdrucks-Lambda-Ausdrucks kann einen oder mehrere durch Kommas getrennte Parameter enthalten. Der Ausdruck ist der Rückgabewert der Lambda-Funktion. Schauen wir uns unten ein einfaches Beispiel an

Erweiterter Leitfaden zu Python-Lambda-Ausdrücken: Vom Anfänger bis zum Meister Erweiterter Leitfaden zu Python-Lambda-Ausdrücken: Vom Anfänger bis zum Meister Feb 24, 2024 pm 03:31 PM

Einführung und grundlegende Syntax von Lambda-Ausdrücken Lambda-Ausdrücke bestehen aus einer Funktionsparameterliste, einem Doppelpunkt und einem Funktionskörper. Die Liste der Funktionsparameter ist dieselbe wie die einer gewöhnlichen Funktion, und der Funktionskörper ist ein Ausdruck und keine Reihe von Anweisungen. #Beispiel: Geben Sie eine Funktion zurück, die zwei Zahlen empfängt und deren Summe zurückgibt sum=lambdax,y:x+y Anwendungsszenarien von Lambda-Ausdrücken Lambda-Ausdrücke eignen sich sehr gut für den Einsatz als Callback-Funktionen, Filterfunktionen und Mapping-Funktionen. Rückruffunktion: Eine Rückruffunktion ist eine Funktion, die innerhalb einer anderen Funktion aufgerufen wird. Lambda-Ausdrücke erleichtern das Erstellen von Rückruffunktionen, ohne deren Namen zu deklarieren. Filterfunktion: Die Filterfunktion dient zum vollständigen Herausfiltern

Java-Lambda-Ausdruck in der Praxis: Die Geheimnisse der funktionalen Programmierung mit Code entschlüsseln Java-Lambda-Ausdruck in der Praxis: Die Geheimnisse der funktionalen Programmierung mit Code entschlüsseln Feb 26, 2024 am 10:25 AM

Der Lambda-Ausdruck ist, wie der Name schon sagt, eine anonyme Funktion mit dem Pfeilsymbol (->) als Kern. Es ermöglicht Ihnen, Codeblöcke als Argumente an andere Methoden zu übergeben oder sie zur späteren Verwendung in Variablen zu speichern. Die Syntax des Lambda-Ausdrucks ist prägnant und leicht zu verstehen und eignet sich sehr gut für die Verarbeitung von Datenflüssen und parallelem Rechnen. 1. Die grundlegende Syntax des Lambda-Ausdrucks Die grundlegende Syntax des Lambda-Ausdrucks lautet wie folgt: (Parameterliste) -> {Codeblock} Unter diesen sind die Parameterliste und der Codeblock optional. Wenn nur ein Parameter vorhanden ist, können die Klammern weggelassen werden. Wenn der Codeblock nur eine Zeile umfasst, können die geschweiften Klammern weggelassen werden. Der folgende Codeblock verwendet beispielsweise einen Lambda-Ausdruck, um 1 zu einer Zahl hinzuzufügen: Liste

Der try-Anweisungsblock in PHP8.0 unterstützt Ausdrücke Der try-Anweisungsblock in PHP8.0 unterstützt Ausdrücke May 14, 2023 am 08:12 AM

Mit der rasanten Entwicklung der Computertechnologie werden Programmiersprachen ständig aktualisiert und verbessert. Unter anderem wird PHP als häufig verwendete Webentwicklungssprache ständig innoviert und bringt neue Versionen auf den Markt. Vor kurzem hat die Veröffentlichung der PHP8.0-Version große Aufmerksamkeit erregt. Unter anderem haben die Verbesserungen des Ausnahmebehandlungsmechanismus in der neuen Version große Aufmerksamkeit erregt. Dieser Artikel konzentriert sich auf das Thema der Unterstützung von Try-Anweisungsblöcken für Ausdrücke in PHP8.0. 1. Verbesserungen im Ausnahmebehandlungsmechanismus von PHP8.0 In früheren Versionen, P

See all articles