免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: UIRL
打印 上一主题 下一主题

请教关于mysql模糊查询的优化 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2005-12-01 13:04 |只看该作者
可以看到,SUBJECT的索引并未起作用。
同样是扫描整个表的。

论坛徽章:
0
12 [报告]
发表于 2005-12-01 23:06 |只看该作者
正则不使用索引。

论坛徽章:
0
13 [报告]
发表于 2005-12-02 09:07 |只看该作者
原帖由 wildlily980 于 2005-12-1 23:06 发表
正则不使用索引。


如果该字段没有索引,当然没法使用了,如果有索引,就会使用索引了。

论坛徽章:
0
14 [报告]
发表于 2005-12-02 10:55 |只看该作者
已经在字段subject上建立索引后,再进行查询的。

查询语句是:select id,subject from code where subject regexp'.*中国.*';

论坛徽章:
0
15 [报告]
发表于 2005-12-04 13:49 |只看该作者
索引只对前字符串的前方起作用,对后面不起作用.

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
16 [报告]
发表于 2005-12-04 15:48 |只看该作者
原帖由 UIRL 于 2005-12-1 13:03 发表


以前没有接触过MYSQL中的正则,测试如下:

1。表CODE中有10173条记录。
2。为表CODE中字段SUBJECT添加索引。
3。使用EXPLAIN 检查查询语句。

结果如下:



MySQL的正则标准是类似(POSIX 扩展)的。

不过千万注意要构造好正则,否则速度将会大打折扣。

论坛徽章:
0
17 [报告]
发表于 2005-12-04 18:39 |只看该作者

关注中

我也有同样的问题

论坛徽章:
0
18 [报告]
发表于 2007-01-30 11:07 |只看该作者
正则一般速度都是比较慢的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP