如何在%SQL%之前和之后获得50个字符


How to get 50 characters BEFORE and AFTER a %SQL%?

MySQL&PHP

数据库行包含一个长文本。

现在我做这个MySQL查询:

SELECT text FROM my_table WHERE text LIKE '%value%'

这非常有效。

现在我想在提取的%value%之前和之后各获取50个字符。我如何用PHP实现这一点?

您可以在MySQL中执行以下操作:

select right(substring_index(text, 'value', 1), 50),
       left(substring_index(text, 'value', 2), 50)
from my_table
where text like '%value%';

尝试以下操作,其中$result是SQL返回的记录。

$excerpt = substr($result, strpos($result, $value) - 50, 50);