SQL空值补零的方法

制作SSRS时遇到一个小问题,用户要求按一天24小时进行选择查看报表的数据,从master..spt_values 取出0~23,但0~9是不属于系统正常的时间点,需要变更后00~09,下面有几种方法实现。

方法一:

 select right (cast('0'+cast( number as nvarchar(2)) as nvarchar(3)),2)
from master..spt_values
where type='p' and number between 1 and 24


方法二:
 select  case when number <10
           then  '0'+ cast(number as varchar(50) )
            else
            cast(number as varchar(20))
             end 
            from master..spt_values
 where type='P'
 and number<24

方法三:
select replicate('0',2-len(number))+convert(varchar(10),number)from master..spt_values where type='P'

replicate:以指定的次数重复字符表达式

这样定义参数后,一天的二十四就可按00~23 进行选择查看。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值