我有数据类型longtext的属性,其中平均有3 MB的纯文本。 不使用全文搜索或任何类型我使用此查询:
select column1 from table where column1 like '%abc5%';
每行的输出是column1的全部内容。因此,如果我想在PHP中对匹配的数据进行着色,我将不得不使用:
<?php
preg_replace('/(abc5)/i', "<b>$1</b>", $row->column1);
....
?>
这贯穿所有内容。有没有办法可以做这样的事情:
select show_first_N_matched(column1) from table where column1 like '%abc5%';
假设我有这样的数据:
abc1 NA NA NA NA NA NA
abc2 NA NA NA NA NA NA
abc3 NA NA NA NA NA NA
abc4 NA NA NA NA NA NA
abc5 NA NA NA NA NA NA
abc4 NA NA NA NA NA NA
abc5 NA NA NA NA NA NA
第一个查询将返回所有内容。第二个只给出了这个:
abc5 NA NA NA NA NA NA
abc5 NA NA NA NA NA NA