社区首页 >问答首页 >mysql regex()交替匹配顺序?

mysql regex()交替匹配顺序?
EN

Stack Overflow用户
提问于 2013-07-09 13:28:39
回答 2查看 424关注 0票数 0

使用以下查询:

代码语言:javascript
代码运行次数:0
复制
SELECT * FROM people WHERE name REGEXP(bob|robert)

我假设mysql将以相当随机的顺序扫描每一行,查找' bob‘或'robert’(而不是先扫描bob,然后再扫描robert),这样做对吗?

如果是这样的话,有没有办法让mysql在不执行两次单独查询的情况下,先将整个表与'bob‘匹配,然后再与'robert’匹配?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-09 13:37:41

代码语言:javascript
代码运行次数:0
复制
SELECT * FROM people WHERE name REGEXP(bob|robert) order by name desc

这只是一个查询,并完成工作。

SGBD可以随心所欲地扫描数据,它不是在SQL中指定的,也不是随机的。

未指定的可以是随机的,但不是随机的。

票数 1
EN

Stack Overflow用户

发布于 2013-07-09 13:37:30

没有一种逻辑方法可以先将整个表与bob匹配(为什么要这样做?)

不过,您可以对结果进行排序,但是如果表的基数很高,并且/或者name不是键,则排序会很慢。

代码语言:javascript
代码运行次数:0
复制
SELECT * FROM people WHERE name = 'bob' OR name = 'robert'
ORDER BY name = 'bob' DESC
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17549472

复制
相关文章
掌握 Python RegEx:深入探讨模式匹配
正则表达式通常缩写为 regex,是处理文本的有效工具。本质上,它们由一系列建立搜索模式的字符组成。该模式可用于广泛的字符串操作,包括匹配模式、替换文本和分割字符串。
数据科学工厂
2023/08/10
2310
掌握 Python RegEx:深入探讨模式匹配
C:基于GNU regex(regex.h)regexec实现正则表达式多次匹配
GNU regex是GNU提供的跨平台的POSIX 正则表达式库(C语言)。 不算GNU提供的扩展函数,POSIX标准的regex库总共就4个函数regcomp,regerror,regexec,regfree. 我们知道 regexec 不能通过一次调用找到字符串中所有满足匹配条件的字符串位置,所以需要通过步进偏移的方式循环执行regexec才能把字符串中所有满足条件的匹配找出来, 每一次匹配的起始偏移是上一次匹配到的字符串结束偏移。
10km
2021/11/17
2.4K1
mongodb 字符串查找匹配中$regex的用法
官网地址:https://docs.mongodb.com/manual/reference/operator/query/regex/#regex-case-insensitive
庞小明
2018/12/10
6.1K0
Nginx location 匹配顺序整理
Nginx location模块整理 具体的Nginx安装就不在这里描述了,这里只是为了对location的描述 Nginx环境 a. 查看当前系统cat /etc/redhat-release [r
coders
2018/01/04
1.6K0
Nginx location 匹配顺序整理
MongoDB模糊查询($regex查询、正则表达式匹配查询)
这里的 i 就是指最上面语法中的那个 options 的值 i 是其的一个选项,代表忽略大小写的意思。 这里 options 还有以下几个选项供使用:
全栈程序员站长
2022/08/23
13.6K0
MySQL执行顺序
根据mysql的执行顺序,可以知道,上述代码先执行了from score ,再执行了where , 最后执行了select 。 别名产生在第五个查询阶段,别名有了之后,后面的执行阶段才能使用,也就是说,别名只能是第五阶段之后的查询才能使用。因此where total >= 200执行时,还未产生别名total,因此编译出错。
全栈程序员站长
2022/07/23
4.6K0
MySQL执行顺序
python regex replace
正则匹配-直接内容替换 s = 'dsoheoifsdfscoopaldshfowefcoopasdfjkl;' ss = s.replace('coop','###') print(s,'\n',ss) dsoheoifsdfscoopaldshfowefcoopasdfjkl; dsoheoifsdfs###aldshfowef###asdfjkl; import re regex = re.compile(r'coop') # 正则匹配替换 regex.sub('$$$$$','sdlaf
py3study
2020/01/08
2.4K0
线程交替打印
两个线程交替打印,也就是用两个信号量或者条件变量,打印完自己的解锁,让其他线程打印
opencode
2022/12/26
3260
mysql语句执行顺序
from->join->on->where->group by->avg\sum...->having->select->distinct->order by
休辞醉倒
2019/07/25
2.9K0
Mysql之正则匹配
Regex与Like的关系 Mysql中我们经常会用到正则表达式就是Like filed like '%?%' 。但是有时对于一些复杂场景下的正则过滤,单单一个like就显得有些力不从心了 Regex
翎野君
2023/05/12
2.1K0
istio 常见问题: VirtualService 路由匹配顺序问题
在写 VirtualService 路由规则时,通常会 match 各种不同路径转发到不同的后端服务,有时候不小心命名冲突了,导致始终只匹配到前面的服务,比如:
imroc
2021/05/01
2.4K0
面试题精选:两个线程按顺序交替输出1-100
陆陆续续,各个公司的校招季都开始了,我也成为了我司的校招面试官,最近也面了不少同学了,面试过程中也发现了很多问题,即有面试者的、也有面试官的、更有自己的问题,这里先挖个坑,后续写个博客详细聊聊,感兴趣的同学可以关注下。另外,我也有个专栏《面试题精选》,里面收录我之前写的一些面试题博客,长期更新、永久免费,近期我会多写一些面试题相关的博客,希望能帮助到在找工作的各位。
xindoo
2021/01/22
6670
面试题精选:两个线程按顺序交替输出1-100
[Dream Big, Think Big, Achieve Big!] Regex Matching Problems 2
包子IT面试培训 助你拿到理想的offer! 有问题,问包子!Got question? Ask Baozi! 接着上一轮关于regex的博客讨论,下面我们讨论一下另一道比较常见的regular e
包子面试培训
2018/04/20
8690
boost::string or boost::regex
当中用蓝色标记出的部分(layout, local_size_x, local_size_y, local_size_z, in)为keyword,斜体字部分(a, b, c)为数据类型为unsigned int的数字,请编写一个函数,用于从文件里抽取出a, b, c的值。当中文件名称为输入參数,该函数的返回值是抽取得到的a,b,c三个值。
全栈程序员站长
2022/07/08
2.1K0
C: GNU regex library (regex.h)正则表达式调用示例
GNU regex是GNU提供的跨平台的POSIX 正则表达式库(C语言)。 我也是最近才接触这个相对于C++/Java实现来说非常简陋,勉强够用的正则表达式库。 不算GNU提供的扩展函数,POSIX标准的regex库总共就4个函数regcomp,regerror,regexec,regfree, 以下以完整源码的方式调用以上函数完成对GNU regex library的基本测试。
10km
2021/11/15
1.1K0
MySQL执行过程以及顺序
前言:MySQL在我们的开发中基本每天都要面对的,作为开发中的数据中间件,MySQL承担者存储数据和读写数据的职责。因为学习和了解MySQL是至关重要的,那么当我们在客户端发起一个sql到出现详细的查询数据,这其中究竟经历了什么样的过程?MySQL服务端是如何处理请求的,又是如何执行sql语句的?本篇博客将来探讨这个问题:
星哥玩云
2022/08/18
1.6K0
MySQL执行过程以及顺序
MySQL的语句执行顺序
MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是 FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户
wangxl
2018/03/08
6.5K0
MySQL的语句执行顺序
mysql查询语句执行顺序
Mysql SQL查询处理的顺序: (8)select (9)distinct <select_list> (1)from <left_table> (3)<join_type> join <right_table> (2)on <join_condition> (4)where <where_condition> (5)group by <group by list> (6)with {cube|rollup} (7)having <having_condition> (10)order
dys
2018/04/02
5.2K0
MySQL的sql执行顺序
在SQL语句中每个关键字都会按照顺序往下执行,而每一步操作,会生成一个虚拟表,最后产生的虚拟表会作为执行的最终结果返回。下面的是常用的关键字的执行顺序:
麒思妙想
2020/07/10
2.2K0
gcc报错:terminate called after throwing an instance of ‘std::regex_error‘ what(): regex
mkdir build …/./configure make & make install
花狗Fdog
2022/05/09
2.2K0

相似问题

regex交替选择错误匹配

23

regex:交替字符/顺序数字

32

regex模式选择交替匹配。

12

MySQL中的逻辑交替顺序

10

匹配交替字符的Regex表达式

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文