`

mysql 5中的REGEXP函数

 
阅读更多
在mysql中,可以使用正则表达式去进行匹配,比如在如下的场景,是十分有用的:


比如有如下的两个表

employee_hobby

id     hobbies
--- --------
1      Travelling
2     Suring the Internet
3     Reading
4     Swimming
5     Meeting Friends
6     Cooking
. .
. .
10   Watching Movie

employee

id    hobby_ids
--- ---------
1     1,4,3,6,10
2    1,3,4,10
3    7
. .
. .
10   3,5,6,9

  employee表记录了某个员工的爱好有哪些,这里不是用典型的一对多来存储,而是用
逗号来进行分隔
  那么,要找的是:
1) 有哪些人有4号的爱好

    SELECT id FROM employee WHERE hobby_ids REGEXP "[[:<:]](4)[[:>:]]"


注意:
   [[:<:]], [[:>:]]

这些标记表示word边界。它们分别与word的开始和结束匹配。word是一系列字字符,其前面和后面均没有字字符。字字符是alnum类中的字母数字字符或下划线(_)。

2)查找同时有这些爱好的:
   SELECT id FROM employee WHERE hobby_ids REGEXP "[[:<:]](1|4|10)[[:>:]]"


1
0
分享到:
评论

相关推荐

    mysql字符串比较函数:concat和regexp.pdf

    mysql字符串比较函数:concat和regexp.pdf

    MySQL中使用replace、regexp进行正则表达式替换的用法分析

    MySQL数据库作为最流行的开源数据库之一,提供了多种工具来执行这类操作,其中replace函数和regexp正则表达式是强大的工具。replace函数可以通过简单的字符串替换来更新数据,而regexp则可以使用复杂的正则表达式...

    mysql_regexp_replace.zip_oracle

    标题"mysql_regexp_replace.zip_oracle"表明我们关注的是如何在 MySQL 中实现类似于 Oracle 的 `REGEXP_REPLACE` 函数的功能。Oracle 的 `REGEXP_REPLACE` 函数允许用户使用正则表达式进行复杂的字符串替换操作,而 ...

    mysql-udf-regexp:实现REGEXP _...()函数MySQL用户定义函数模块

    mysql-udf-regexp 该程序包将正则表达式函数用作MySQL用户定义函数(UDF)。...这些函数支持与MySQL REGEXP运算符相同的正则表达式语法,如MySQL手册的正则表达式附录中所述。 这些功能在名称上与Oracle SQL函数

    mysql函数大全,mysql

    STRCMP STRCMP()函数是MySQL里比较字符串的最简单方式之一。这个函数接受两个参数——要被比较的字符串。如果这个两个字符串相同,它就返回0;如果第一个大于第二个,它就返回1;如果第一个小于第二个,它就返回-1 ...

    mysql内部函数

    MySQL内部函数是数据库管理系统中非常重要的组成部分,它们用于执行各种数据处理任务,包括但不限于计算、比较、转换和处理日期时间等。以下是对标题和描述中提及的一些关键知识点的详细解释: 1. **操作符和操作符...

    mysql正则表达式(regexp和rlike)的搜索功能实例分析

    本文实例讲述了mysql正则表达式(regexp和rlike)的搜索功能。分享给大家供大家参考,具体如下: 我们知道正则表达式是描述搜索模式的特殊字符串。 它是一个强大的工具,为我们提供一种简洁灵活的方法来识别基于模式...

    MySQL的字符串函数使用说明

    MySQL中的字符串函数是数据库操作中不可或缺的一部分,它们用于处理和操作文本数据,这些数据在数据库中以字符串形式存在。字符串函数提供了多种功能,包括字符转换、查找、替换、截取和计算长度等。 1. ASCII(str)...

    MySQL数据库考试试题及答案-34页

    在 MySQL 中,可以使用 REGEXP 运算符来使用正则表达式过滤数据。 19.SELECT 语句的重要性 在 MySQL 中,SELECT 语句是最重要的,也是使用最频繁的语句。 20.实体完整性 在 MySQL 中,设置外键可以实现实体...

    mysql模糊查询like和regexp小结

    例如,创建一个名为 `MySQL5DialectRegexp` 的类,继承 `org.hibernate.dialect.MySQLInnoDBDialect`,并注册一个自定义函数来处理 `REGEXP`: ```java public class MySQL5DialectRegexp extends org.hibernate....

    mysql函数split功能实现

    在MySQL数据库中,`SPLIT`函数并不是内置的函数,但我们可以使用其他方式来实现类似的功能,即字符串分隔。通常,我们用`SUBSTRING_INDEX()`或`REGEXP_REPLACE()`结合`FIND_IN_SET()`来分割字符串。这些函数在处理...

    MySQL中字符串函数详细介绍

    MySQL中的字符串函数是数据库操作中不可或缺的一部分,它们提供了丰富的功能,帮助用户处理和操作字符串数据。在MySQL中,字符串函数主要分为以下几个类别: 1. **ASCII()** 函数:返回字符串中最左边字符的ASCII...

    presto sql 与mysql sql 对比.pdf

    * 字符串函数:Presto SQL 和 MySQL SQL 都支持字符串函数,如 `substring()`、`substring_index()`、`regexp_like()` 等。 * 数学函数:Presto SQL 和 MySQL SQL 都支持数学函数,如 `round()`、`coalesce()` 等。 ...

    mysql update正则替换sql语句

    除了REPLACE函数,MySQL还提供了REGEXP_REPLACE函数(从MySQL 8.0版本开始引入),这个函数可以直接进行正则表达式的替换操作。使用REGEXP_REPLACE函数的语法如下: ```sql UPDATE test SET url = REGEXP_REPLACE...

    mysql分割字符串

    MySQL中的`SUBSTRING_INDEX()`函数是进行字符串分割的常用工具。它返回一个子串,该子串包含了从原始字符串的起始部分到指定分隔符出现的次数。函数的基本语法如下: ```sql SUBSTRING_INDEX(str, delim, count) ``...

    MySQL常用的函数[定义].pdf

    本篇文章将深入解析MySQL中的一些常用函数和操作符。 首先,了解操作符的优先级至关重要,因为它决定了表达式的计算顺序。在MySQL中,操作符的优先级从低到高排列如下: 1. `:=`、`||`、`OR`、`XOR` 2. `&&`、`AND...

    MySQL数据库考试测试试题(附答案).doc

    5. CREATE TABLE语句:试题中涵盖了CREATE TABLE语句的使用,包括FULLTEXT子句的使用。 6. ALTER TABLE语句:试题中涉及到ALTER TABLE语句的使用,包括删除一列的操作。 7. DROP TABLE语句:试题中涵盖了DROP ...

    mysql8.0.13

    正则表达式增强,提供了REGEXP_LIKE(),EGEXP_INSTR(), REGEXP_REPLACE(), REGEXP_SUBSTR()等函数 新增备份锁,允许在线备份期间的DML,同时防止可能导致快照不一致的操作。 备份锁由LOCK INSTANCE FOR BACKUP和...

Global site tag (gtag.js) - Google Analytics