去掉右边一个字符

feng199 2018-08-10 08:49:16

SET @a="青瓜;";
SET @b=LEFT(@a, LENGTH(@a)-5);
SELECT @a,@b;

执行结果:
@a @b
青瓜; 青瓜
这里不明白,本来是一个分号,占用1个字符,为什么要减掉5,才能去掉分号?
...全文
193 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ckc 2018-08-11
  • 打赏
  • 举报
回复
你是utf8编码吧,这样一来length的结果就是7,两个utf8的汉字加上1个;
7-5=2
left是按编码处理的,所以取了左边的两个字符,就是青瓜了
feng199 2018-08-11
  • 打赏
  • 举报
回复
用这个函数 CHAR_LENGTH

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧