数据库基础知识——用正则表达式进行搜索

tech2023-11-12  88

使用MySQL正则表达式

为了下面的展示,我们创建了 crashcourse 数据库:

CREATE DATABASE crashcourse DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

crashcourse 是我自己设置的数据库的名称,下面的使用示例,都是使用这个数据库。

为了下面的展示,我们还需要为 crashcourse 数据库创建一些表和往表中插入一些记录, 相关的 SQL 文件有:

创建表:create.sql插入数据:populate.sql

SQL 语句默认不区分大小写。

基本字符匹配(REGEXP)

select vend_id, prod_name from products where prod_name regexp "1000" order by prod_name;

这条语句使用 REGEXP 关键字,它告诉MySQL:REGEXP后所跟的东西作为正则表达式(与文字正文“1000”匹配的一个正则表达式)处理。

这里的 REGEXP 关键字类似于Python的 re.search() 函数,即从目标字符串中匹配到一个REGEXP 关键字后面定义的pattern("1000")即可,不要求完全匹配。

其他的关于 pattern 的定义和设计规则跟其他编程语言是一样的,请参考:正则表达式全集。

最新回复(0)