小时转换为数字前补0的问题

 

今天碰到一个问题,需要把日期中的小时单独取出来,如果是个位数,那么前面要被0转换为字符串。

如:2009年6月26日 2时56分,要取出02。

语句如下:

select right(convert(varchar(3), 100 + datepart(hh,getdate())),2)

即,先使用Datepart函数,取出小时。加上100以避免当小时位数只有一位时转换为字符串时前面没有0.这时把加出来的数转换为字符串,再取右边两位,就得到我们想要的结果。

posted @ 2009-06-26 03:05  绝殇  阅读(529)  评论(1编辑  收藏  举报