第一种方法:

right('00000'+cast(@count as varchar),5)

其中'00000'的个数为right函数的最后参数,例如这里是5,所以有5个0

@count就是被格式化的正整数

例如:

1、select right('00000'+cast(dense_rank() over( order by zsbh ) as VARCHAR(20)),5)

2、declare @count int
set @count = 0
while (@count < 1000)
begin
print right('00000'+cast(@count as varchar),5)
set @count = @count +1
end

第二种方法:使用REPLICATE函数,将字串值重复指定的次数。

例如:

REPLICATE('重复',3)  输出结果为:重复重复重复

【 值得注意的是当 integer_expression 值为负值,则返回NULL 】
因此,补0操作可如下实现:

SELECT REPLICATE('0',5-len('9'))+'9' --左边补0, 如 00009
SELECT '9' + REPLICATE('0',5-len('9')) --右边补0,如 90000

第三种方法:使用stuff函数,删除指定长度的字符,并在指定的起点处插入另一组字符。例如:

第一个字符串 abcdef 中删除从第 2 个位置(字符 b)开始的三个字符,然后在删除的起始位置插入第二个字符串,从而创建并返回一个字符串。

SELECT STUFF('abcdef', 2, 3, 'ijklmn')

输出结果为:

aijklmnef。

因此补0操作可如下实现:

select stuff('00000',len('00000')-len('123')+1,len('123'),'123')

SQL 给字符串补0的更多相关文章

  1. 在js中做数字字符串补0

    转自(http://blog.csdn.net/aimingoo/article/details/4492592) 通常遇到的一个问题是日期的“1976-02-03 HH:mm:ss”这种格式 ,我的 ...

  2. String字符串补0操作常见方法

     String前补0 java的String字符串补0或空格 方法一:自己写的方法 /* *数字不足位数左补0** @param str* @param strLength*/public stati ...

  3. 在SQL中 给字符串补0方法

    --第一种方法SELECT RIGHT('00000'+CAST(ID AS nvarchar(50)),5) FROM dbo.TableName --左边补0,如 00001,00039 SELE ...

  4. Java String字符串补0或空格

    package cn.com.songjy; import java.text.NumberFormat; //Java 中给数字左边补0 public class NumberFormatTest  ...

  5. sql 数字转换为字符串补0

    select right('00000000000'+convert(varchar(5),123),5) select right('00000000000'+cast(123   as   var ...

  6. PHP 字符串补0

    转自:https://www.cnblogs.com/bluebirds/archive/2016/11/22/6091099.html#undefined 概述:项目中经常会使用到在一串编码左边.右 ...

  7. String 字符串补0

    method1: 前提是你的长度已经确定!比如规定现实10位! - 优点: 不需要都是数字类型    String str_m =  "123X";  String str =&q ...

  8. 在js中做数字字符串加0补位,效率分析

    分类: Jquery/YUI/ExtJs 2010-08-30 11:27 2700人阅读 评论(0) 收藏 举报 functiondate算法语言c 通常遇到的一个问题是日期的“1976-02-03 ...

  9. MSSQL sql numeric转字符串显示不补0

    由于工作中需要把numeric转字符串显示,但是有一个问题会自动补0. DECLARE @f NUMERIC(18,4)=1.1200, @str VARCHAR(50) SELECT CAST(@f ...

随机推荐

  1. Android [VP]视频播放器播放本地视频时收到短信/彩信,需要界面提示 M

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  2. 1052: 旋转单词(words)

    #include <iostream> #include <iomanip> #include <cstdlib> #include <string> ...

  3. PYQT操作JS并且截图事例

    如何安装PYQT,可以查看我的上一篇文章:http://www.cnblogs.com/liqiu/p/3361948.html 然后运行下面的带有JS程序的Python脚本即可: #-*- codi ...

  4. 如何解析android访问webservice返回的SoapObject数据(可用)

    怎么解析android访问webservice返回的SoapObject数据 本帖最后由 kkDragon123 于 2013-03-26 15:50:07 编辑 我的数据如下:mingdanResp ...

  5. Java 希尔排序

    效率:O(n*logN) package sort; import utils.Util; /** * 希尔排序 * 以h为间隔,进行比較. 按一定公式.先求出最大的间隔h * 当h值大时,须要移动的 ...

  6. oracle-sakila-db sakila的Oracle版本

    在Sakila——MySQL样例数据库解析 中,学习了sakila for mysql的表结构.并把它作为数据仓库.ODI ETL学习的源数据库.ODI Studio拓扑结构的创建与配置 后来发现OD ...

  7. 面向对象高级——Object类、包装类以及匿名内部类

    Object类  知识点:掌握Object类的作用.掌握Object类中toString().equal()方法的作用 ,掌握Object接收引用数据类型的操作. 假设一个类在定义时没有明白指明继承哪 ...

  8. Excel之定位和查找

    在数据量比较少的情况下,我们要到达Excel中某一位置时,通常会用鼠标拖动滚动条到达需要的位置,查找某已知固定的值,用Ctr+F,在查找内容中输入对应的值即可一个个的查找到其对应的位置.但当数据量较多 ...

  9. Windows开发进阶之VC++中如何实现对话框的界面重绘

    技术:Windows 系统+Visual studio 2008   概述 应用程序界面是用户与应用程序之间的交互的桥梁和媒介,用户界面是应用程序中最重要的组成部分,也是最为直观的视觉体现.对用户而言 ...

  10. Javascript调试利器console的使用

    一.Console API Console.assert() 判断第一个参数是否为真,false的话抛出异常并且在console输出相应信息. Console.count() 以参数为标识记录调用的次 ...