Mysql 在大型数据库中使用regexp搜索文本

Mysql 在大型数据库中使用regexp搜索文本,mysql,regex,text,Mysql,Regex,Text,我试图使用这个查询脚本来搜索mysql数据库 我只搜索表中的一列。。但每行在该列中有大约3000个字符长的文本。。我现在只增加了100行,但速度已经慢了 如果我有一百万行像这样,这个脚本会不能使用吗 为了能够使用此脚本并拥有数百万行长文本,我应该采取什么方法 我的查询如下所示: 从文章文章从文章从中选择,代码>从中选择,替换(替换(文本,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

我试图使用这个查询脚本来搜索mysql数据库

我只搜索表中的一列。。但每行在该列中有大约3000个字符长的文本。。我现在只增加了100行,但速度已经慢了

如果我有一百万行像这样,这个脚本会不能使用吗

为了能够使用此脚本并拥有数百万行长文本,我应该采取什么方法

我的查询如下所示:

从<代码>文章<代码>文章<代码>从<代码>文章<代码>从中选择,代码>从中选择,替换(替换(文本,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,(1613 3 3)本方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方(161方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方方ف(ف))

文章
中选择*WHERE(替换(文本,' ','')REGEXP'hell(öo|o|||o|Ô)

@ali haydar

我绝对建议使用索引和相关的MySql函数。Regex对于相对较小的文本来说是好的和高效的,但对于在数据库中搜索则不是这样。全文索引就是为这种目的而设计的,它使用非常高效的数据结构来最小化磁盘I/O,并在大数据中快速搜索


希望这能有所帮助。

您想获得什么?该列有哪些字符集和排序规则?使用正确的一个(在选择查询期间),您不需要这个regexp。如果您已经使用了
utf8\u unicode\u ci
(和
utf8
作为字符集),那么我的默认值是utf8\u general\u ci,然后
select'ö'='code>返回
1
'hellÖ'='hell'
!是的,但如果我用LIKE,是吗?我需要在LIKE不匹配的其他情况下使用regexp。。例如,单词末尾的ه=㶡..谢谢你的建议,我正在考虑全文搜索,但我不确定如何使用regexp灵活性。。那么,使用这样的regexp查询的大型数据库是不可能的吗?虽然这些查询与regexs不同,但您可以利用布尔模式运算符的功能