删除MySQL中长度为400个字符或10个句子后的字符串

删除MySQL中长度为400个字符或10个句子后的字符串,mysql,string,Mysql,String,我有一个表格,其中一个字段(描述)可以不同,理想情况下,我希望删除400个字符后的任何内容或10个句子后的内容(但在句子末尾,要么什么都没有,要么添加…以使其看起来更自然) 我得到了这个职位 SELECT description,LOCATE('.',description) as pos FROM table WHERE locate('.',description)>20; 但我不能再继续下去了;这是最好的方法吗?要将句子缩短为10句,请使用: 您的查询: SELECT

我有一个表格,其中一个字段(描述)可以不同,理想情况下,我希望删除400个字符后的任何内容或10个句子后的内容(但在句子末尾,要么什么都没有,要么添加…以使其看起来更自然)

我得到了这个职位

SELECT description,LOCATE('.',description)   as pos
FROM table  
WHERE locate('.',description)>20;  

但我不能再继续下去了;这是最好的方法吗?

要将句子缩短为10句,请使用:

您的查询:

SELECT  concat(
            left(  substring_index( description, '.', 10 )
                  ,397
                )
            ,'...' )
FROM table  
WHERE len( description ) > 400

注意:未经测试。

在10句话之后将其删除可能比它的价值更大。
SELECT  concat(
            left(  substring_index( description, '.', 10 )
                  ,397
                )
            ,'...' )
FROM table  
WHERE len( description ) > 400