我的桌子上有5000多个条目,基本上我想用摘录替换文本。因此,“文本”列通常在1000到2000个单词之间。我希望每个单元格在80个单词后被删减。另外,最好在80个单词之后添加“阅读更多...”之类的内容。 MySQL查询可以吗?

最佳答案

从MySQL级别执行此操作不是一个好主意。这是关于VIEW层的,因此应该在从数据库读取数据并将其显示的地方进行编程。
在PHP中,可以使用

function cutStringAfterWords($phrase,$max_words){
    $phrase_array = explode(' ',$phrase);
    if(count($phrase_array) > $max_words && $max_words > 0)
        $phrase = implode(' ',array_slice($phrase_array, 0, $max_words)).'...';
    return $phrase;
}

echo cutStringAfterWords($largeText,80).' Read more...';


,但我相信大多数语言都有它们的对等语言。

编辑:举了一个例子,削减了80个字。您可以简单地替换函数中的3个点以始终读取更多,或删除函数中的3个点,并在每个截断的文本之后手动添加“ Read More ...”字符串

关于mysql - MySQL删除列中n个单词后的所有内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51519937/

10-10 22:44