MYSQL 删除某个表指定字段里的最后几个字符
比如我要删除数据库表为news,字段为为newstext里的指定id号100到200的最后5个字符,请问该怎么写命令!要删除的内容还有一个特征:newstext字段里所有...
比如我要删除数据库表为news,字段为为newstext里的指定id号100到200的最后5个字符,请问该怎么写命令!
要删除的内容还有一个特征:newstext字段里所有的最后1个字符为“,”的字符。
是否可以通过查询,找到所有字段里最后1个字符为“,”内容,然后删除这个最后1个字符。
注意不能删除全部“,”,因为内容里有其他“,”。
谢谢! 展开
要删除的内容还有一个特征:newstext字段里所有的最后1个字符为“,”的字符。
是否可以通过查询,找到所有字段里最后1个字符为“,”内容,然后删除这个最后1个字符。
注意不能删除全部“,”,因为内容里有其他“,”。
谢谢! 展开
2个回答
展开全部
先把自动事务提交关掉, 或者做好备份工作.
SET AUTOCOMMIT = 0;
删除最后5个字符:
UPDATE NEWS
SET NEWSTEXT = substring(NEWSTEXT,1,length(NEWSTEXT)-5)
WHERE ID BETWEEN 100 AND 200
AND length(NEWSTEXT) > 5;
删除最后一个字符为 `,`:
UPDATE NEWS
SET NEWSTEXT =
CASE WHEN NEWSTEXT LIKE '%,' THEN substring(NEWSTEXT,1,length(NEWSTEXT)-1)
ELSE NEWSTEXT END
WHERE ID BETWEEN 100 AND 200
AND NEWSTEXT LIKE '%,';
大意是这样, 细节再调整下, 执行完查下数据是否正确再提交.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询