漂流的老妖怪

导航

 

MYSQL补0方式,两种情况,在字段前补0:LPAD(str,len,padstr) ,在字段后补0:RPAD(str,len,padstr)

测试表数据:

select deptname,sort from t_sm_dept ORDER BY sort;

 查询排序字段sort的最大长度:

select MAX(LENGTH(sort)) from t_sm_dept;


 

1. 在字段前补0:LPAD(str,len,padstr) 

  LPAD(str,len,padstr) 返回字符串 str, 其左边由字符串padstr 填补到len 字符长度。假如str 的长度大于len, 则返回值被缩短至 len 字符。

测试查询:

select sort,LPAD(sort,7,0) from t_sm_dept;


 实际运用:

 查询语句:

select d.deptname,
d.sort,
LPAD(d.sort,(select MAX(LENGTH(sort)) from t_sm_dept),0) as sorttemp
from t_sm_dept d ORDER BY sorttemp;

查询结果:


 

2. 在字段后补0:RPAD(str,len,padstr) 

  RPAD(str,len,padstr) 返回字符串 str, 其右边由字符串padstr 填补到len 字符长度。假如str 的长度大于len, 则返回值被缩短至 len 字符。

测试查询:

select sort,RPAD(sort,7,0) from t_sm_dept;


 实际运用:

查询语句(查询及排序):

select d.deptname,
d.sort,
RPAD(d.SORT,(select MAX(LENGTH(sort)) from t_sm_dept),0) as sorttemp
from t_sm_dept d ORDER BY sorttemp;

查询结果:

如查询结果显示,排序后的结果可以按照层级关系进行整体排序。

 

posted on 2019-05-05 16:01  漂流的老妖怪  阅读(1940)  评论(0编辑  收藏  举报