先直接放答案(替换掉你上面代码的sql语句):
SELECT id, CONCAT(SUBSTRING(`content`, 1, 30), '...') AS content FROM `newsdb` WHERE `status` = 1 AND `shenhe` = 1 ORDER BY id DESC LIMIT 0,5;
主要起作用的就是 MySQL 的两个函数:
concat():拼接多个字符串
substring():截取字符串
MySQL 字符串截取函数:left(), right(), substring(), substring_index()。还有 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。
-----------分割线------------有关substring()常用的补充---------------------------:
1 从字符串的第 4 个字符位置开始取,直到结束
mysql> select substring('example.com', 4);
+------------------------------+
| substring('example.com', 4) |
+------------------------------+
| mple.com |
+------------------------------+
从字符串的第 4 个字符位置开始取,只取 2 个字符
mysql> select substring('example.com', 4, 2);
+---------------------------------+
| substring('example.com', 4, 2) |
+---------------------------------+
| mp |
+---------------------------------+
3 从字符串的第 4 个字符位置(倒数)开始取,直到结束
mysql> select substring('example.com', -4);
+-------------------------------+
| substring('example.com', -4) |
+-------------------------------+
| .com |
+-------------------------------+
4 从字符串的第 4 个字符位置(倒数)开始取,只取 2 个字符
mysql> select substring('example.com', -4, 2);
+----------------------------------+
| substring('example.com', -4, 2) |
+----------------------------------+
| .c |
+----------------------------------+
函数 substring(str,pos, len)中, pos 可以是负值,但 len 不能取负值
!~谢谢~!