'李晓娜'一共9个字节,按它的长度换算为什么是8个*?

'李晓娜'一共9个字节,按它的长度换算为什么是8个*?

每一个字代表3个*,晓娜这两个字换成填充字符应该是6个星才对吧,因为‘李’应该算3个字符长度,RPAD函数里面的最大字符长度不是length('李晓娜')也就是9吗

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕元宝 2020-09-05 12:12:00

同学你好:

1、因为参数设置截取第一个字符,加入RPAD方法对于汉字解析,一个汉字代表3个英文字母所以在这里会显示 李********

2、加入RPAD方法 length('李晓娜')结果是9

如果我的回答解决了同学的疑惑,欢迎采纳,祝同学学习愉快!

  • 提问者 反冲斗士 #1
    还是没懂,还是那一个疑惑,从‘李’这个字开始填充,直到整个字符串长度为9,李本身就是3个字符,所以应该还剩6个字符位置才对
    2020-09-05 22:20:02
  • 好帮手慕美 回复 提问者 反冲斗士 #2
    同学,你好。length()是获取字符串的长度,以字节为单位,一个汉字占3个字节,而SUBSTRING()取的是一个字符,因此得到的结果是李占1位,剩下的为8个*。祝学习愉快~~~~
    2020-09-06 09:51:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师