SQLServer中查询的数字列前面补0返回指定长度的字符串

角本如下:

/****** Script for SelectTopNRows command from SSMS  ******/
SELECT TOP 1000 [ID]
      ,[SN]
      ,[Name]
  FROM [EduDB].[dbo].[TestTab]
  select Right('0123456',SN) from TestTab;
  select RIGHT(REPLICATE('0',5)+CAST(SN AS varchar(10)),5) AS 'SN' from TestTab;
  select RIGHT('00000000'+CAST(SN as varchar(10)),5) as 'sn' from TestTab
复制代码
效果如下:
http://www.cnblogs.com/songxingzhu/p/4151184.html
========

SQL SERVER自动在前面补0满足10位怎么写

SELECT 
right(cast('000000000'+convert(int,code)as varchar(20)),10),code,
id,pydate,isnull(lzdate,'9999-12-31'),0 
   FROM zlemployee

工号的类型是INT的,请问为什么用ID就可以呢?为什么用CODE就不行了?

已经搞定了,一定在临时表中char转int,不能直接转

咱们来看:
1
cast('000000000'+convert(int,code)as varchar(20))
首先:
convert(int,code) :你把code 转为 int
然后
'000000000'+convert(int,code)我估计sqlserver肯定把表达式作为数字相加了,那么0000...的相加就没有作用了。
最后
就不是你要的结果了。

大致应该这样:
1
2
3
4
SELECT 
right(cast('000000000'+rtrim(code) as varchar(20)),10),code,
id,pydate,isnull(lzdate,'9999-12-31'),0 
   FROM zlemployee
========
请教,我想将一个字段值在SQL语句中,自动补齐位数,是否可以做到,有这样的函数么?

比如为 3时,
select 的结果是 '003',
为333时,结果就是 '333'

这样在sql里,能否直接做到呢??

update 表 set 字段 = right('000' + cast(字段 as varchar),3)

select right('000' + cast(col as varchar(10),3) as col from [table]
========

SQL语句 不足位数补0

select RIGHT('0000'+CAST( '123'  AS nvarchar(50)),4) DWBH

公式 RIGHT('位数'+CAST(要判断的字段 AS nvarchar(50)),位数 )
http://www.cnblogs.com/zhuxiaohui/archive/2013/06/02/3114465.html
========

sql server 左补齐0

http://my.oschina.net/ind

select RIGHT('00000'+'1',5)

问题:需要格式为00001、00002、00003、00004 ... 00010 ... 00100 ...

思路:用5个长度的00000,去拼接后面自增的数字(必须转为字符),然后从右侧开始截取5个长度。
========

Oracle和SQLServer补齐字符串的方法

Oracle:Lpad函数
[sql] view plain copy
语法格式如下:  
lpad( string, padded_length, [ pad_string ] )  
string  
准备被填充的字符串;  
padded_length  
填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;  
pad_string  
填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。  
实例:

[sql] view plain copy
select lpad(22,10,'0') from dual;  
结果:  
  
1   0000000022

SQLServer:right函数

语法

  Right(string, length)
  Right 函数的语法具有下面的命名参数:
  
部分 说明
string 必要参数。字符串表达式,从中最右边的字符将被返回。如果 string 包含 Null,将返回 Null。
length 必要参数;为 Variant (Long)。为数值表达式,指出想返回多少字符。如果为 0,返回零长度字符串 ("")。如果大于或等于 string 的字符数,则返回整个字符串。 示例:
right(replicate('0',10)+ltrim(参数),10)
========

sql server 补齐0学习总结相关推荐

  1. 『SQL Server 2000 Reporting Services学习笔记』(1)报表管理器的使用 与 通过角色分配配置安全性...

    『SQL Server 2000 Reporting Services学习笔记』(1)报表管理器的使用 与 通过角色分配配置安全性 __________________________________ ...

  2. sql server 小技巧(8) visual studio 2013里使用Sql server compact 4.0及发布问题处理

    1. 安装 Microsoft SQL Server Compact 4.0 https://www.microsoft.com/zh-cn/download/confirmation.aspx?id ...

  3. java 左边补0_java 数字左补齐0

    NumberFormat nf = NumberFormat.getInstance(); //设置是否使用分组 nf.setGroupingUsed(false); //设置最大整数位数 nf.se ...

  4. SQL Server 2005 For XML[学习]

    for xml 扩展功能 SQL Server 2005 通过 select 语句的 for xml 扩展功能,支持在服务器端以XML 文档的形式返回SQL 查询的结果. 语法如下: select 表 ...

  5. SQL server USE GO语句学习总结

    语法 USE USE语句的基本语法如下所示 - USE database_name; //数据库名称 数据库名称在RDBMS中必须是唯一的 如果SQL模式中有多个数据库,那么在新建查询开始操作之前,需 ...

  6. SQL Server与Oracle对比学习:权限管理(一)

    http://blog.csdn.net/weiwenhp/article/details/8093661 我们发现我们现在的生活中到处是涉及到密码,你要记各种各样的密码.比如银行卡,邮件,QQ,微博 ...

  7. Sql Server 行转列学习 根据学生表、课程表、学生成绩表统计每个学生的各科成绩和他的总成绩、平均成绩...

    -------************************************************************* -------学习.测试行转列      ------- So ...

  8. sql server查询历史进程_学习笔记 | SequoiaDB SQL查询语句执行过程

    本篇笔记将为大家介绍 SequoiaDB 巨杉数据库查询 SQL 语句的执行过程,以及查询语句执行过程中实例层.协调节点.编码节点.数据节点各自承担的功能. 应用程序或用户想要从数据库查询需要的数据, ...

  9. padding valid same区别——就是是否补齐0的问题

    参考:https://stackoverflow.com/questions/37674306/what-is-the-difference-between-same-and-valid-paddin ...

最新文章

  1. ICLR2018 | 深度学习顶会见闻,干货资源都在这里(附源码、论文链接)
  2. hibernate中load和get方法的区别 lazy的策略
  3. CentOS 7 下 Zeal 安装
  4. 《剑指offer》第十三题(机器人的运动范围)
  5. java写一个窗体并连接MySQL_大神帮忙写一个简单地java页面,连接MySQL数据库之后能够显示数据库上的数据...
  6. 算法笔记_231:网格中移动字母(Java)
  7. BZOJ4001[TJOI2015]概率论(数学、期望、生成函数、卡特兰数)
  8. 【啊哈!算法】算法6:只有五行的Floyd最短路算法
  9. 电瓶车续航测试软件,【电驹视频】实测13款电动车真实续航,最靠谱的竟然是它……...
  10. 使用数据集(DataSet)、数据表(DataTable)、集合(Collection)传递数据
  11. c语言 int操作bit,C语言,使用共用体和结构体 查看int型的bit散布
  12. 6.CCS新建工程及配置
  13. 线程同步之条件变量:pthread_cond_signal和pthread_cond_wait
  14. Unity UGUI 代码改变遮挡层级
  15. c语言出现了语法错误能编译吗,如何调试C程序的语法错误和逻辑错误
  16. 单机版Docker Swarm安装及试用
  17. js运动(一)—— sidebar(分享到)
  18. 如何快速提升网站百度权重
  19. 罗永浩压倒了王自如,但世界涛声依旧
  20. IIS 配置 HTTPS

热门文章

  1. Spring Boot与日志 ——日志框架、日志配置||SLF4j使用||SpringBoot日志关系||切换日志框架
  2. Elasticsearch的或且非及其组合
  3. session过期设置
  4. ADB连接小米手机模拟上下左右滑动实例演示
  5. 在Vue组件中获取全局的点击事件
  6. RT-Thread的I/O设备模块及其驱动实现步骤
  7. Python读文件要用到的一些东西
  8. iterp2函数--------二维数据内插值
  9. Mat与IplImage*类型间的转换
  10. 二值化函数Threshold