MySQL只显示匹配的数据而不是一切

时间:2011-08-19 13:19:22

标签: php mysql sql

我有数据类型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

0 个答案:

没有答案