You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL中生成无符号占位的右对齐n位数字符串

解决方案

有更简洁的实现方式,不需要调用substr,通用方案兼容绝大多数主流SQL数据库:

最优实现

直接使用lpad函数即可,它会自动将整数转换为字符串,再在左侧填充空格到固定3位长度,天然实现右对齐效果,完全没有多余的符号位空格,和你原有写法的输出结果完全一致:

select
   lpad(theNumber, 3) as number3digits
from
   theTable;

效果验证

由于你的输入取值是1到999的正整数,不存在负号场景,最终输出和需求完全匹配:

  • 输入值为1时,输出 1
  • 输入值为12时,输出 12
  • 输入值为123时,输出123

内容的提问来源于stack exchange,提问作者René Nyffenegger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 18:54:02