网站大量收购闲置独家精品文档,联系QQ:2885784924

正则表达式和运算符.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 正则表达式查询 使用正则表达式查询 正则表达式是用某种模式去匹配一类字符串的一个方式。例如,使用正则表达式可以查询出包含A、B、C其中任一字母的字符串。正则表达式的查询能力比通配字符的查询能力更强大,而且更加的灵活。正则表达式可以应用于非常复杂查询。本节将详细讲解如何使用正则表达式来查询。 MySQL中,使用REGEXP关键字来匹配查询正则表达式。其基本形式如下: 属性名 REGEXP 匹配方式 1 查询以特定字符或字符串开头的记录 使用字符“^”可以匹配以特定字符或字符串开头的记录。 下面从student表name字段中查询以字母“L”开头的记录。SQL代码如下: SELECT * FROM student WHERE name REGEXP ^L; 2 查询以特定字符或字符串结尾的记录 使用字符“$”可以匹配以特定字符或字符串结尾的记录。 下面从student表name字段中查询以字母“c”结尾的记录。SQL代码如下: SELECT * FROM student WHERE name REGEXP c$; 3 用符号“.”来替代字符串中的任意一个字符 用正则表达式来查询时,可以用“.”来替代字符串中的任意一个字符。 下面从student表name字段中查询以字母“L”开头,以字母“y”结尾,中间有两个任意字符的记录。SQL代码如下: SELECT * FROM student WHERE name REGEXP ^L..y$; 4 匹配指定字符中的任意一个 使用方括号([])可以将需要查询字符组成一个字符集。只要记录中包含方括号中的任意字符,该记录将会被查询出来。 例如,通过“[abc]”可以查询包含a、b、c这三个字母中任何一个的记录。 下面从student表name字段中查询包含c,e,o3个字母中任意一个的记录。 SELECT * FROM student WHERE name REGEXP ‘[ceo]; 5 匹配指定字符以外的字符 使用“[^字符集合]”可以匹配指定字符以外的字符。 下面从student表name字段中查询包含a到w字母和数字以外的字符的记录。SQL代码如下SELECT * FROM student WHERE name REGEXP [^a-w0-9]; Sno name 2 Lucy 4 Lily 6 匹配指定字符串 正则表达式可以匹配字符串。当表中的记录包含这个字符串时,就可以将该记录查询出来。如果指定多个字符串时,需要用符号“|”隔开。只要匹配这些字符串中的任意一个即可。 SELECT * FROM student WHERE name REGEXP ‘ic; SELECT * FROM student WHERE name REGEXP ‘|ic|uc|aa; 7 使用“*”和“+”来匹配多个字符 正则表达式中,“*”和“+”都可以匹配多个该符号之前的字符。但是,“+”至少表示一个字符,而“*”可以表示零个字符. 从STUDENT表中NAME字段中查询字母‘c’之前出现‘a’的记录 SELECT * FROM student WHERE name REGEXP ‘a*c; Sno name Aric Eric Jack lucy 8 使用{M}或者{M,N}来指定字符串连续出现的次数 正则表达式中,“字符串{M}”表示字符串连续出现M次;“字符串{M,N}”表示字符串联连续出现至少M次,最多N次。例如,“ab{2}”表示字符串“ab”连续出现两次。“ab{2,4}”表示字符串“ab”连续出现至少两次,最多四次。 从STUDENT表中NAME字段中查询出现过‘a’3次记录 SELECT * FROM student WHERE name REGEXP ‘a{3}; Sno name aaa Dadaaa aaabd 运算符简介 当数据库中的表定义好了以后,表中的数据代表的意义就已经定下来了。通过使用运算符进行运算,可以得到包含另一层意义的数据。例如,学生表中存在一个birth字段,这个字段是表示学生的出生年份。如果,用户现在希望查找这个学生的年龄。而学生表中只有出生年份,没有字段表示年龄。这就需要进行运算,用当前的年份减去学生的出生年份,这就可以计算出学生的年龄了。 从上面可以知道,MySQL运算符可以指明对表中数据所进行的运算,以便得到用户希望得到的数据。这样可以使MySQL数据库更加灵活。MySQL运算符包括算术运算符、比较运算符、逻辑运

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档