将SQL Server中的整数转换为带填充的字符型

3
我使用SQL中的datepart函数返回datetime值所在周的数字,并将其转换为varchar类型以构建字符串。我的问题是,如果周数小于10,则需要它变成"01"而不是"1",因为另一个数据库中的数据以此存储。
我的问题是,是否可以通过给CONVERT函数某些规范来强制使varchar长度为2而不是1?
这是我目前的语句:
convert(varchar(2),datepart(ww,'2013-1-3 11:00:00.000'))

我可以让它返回“01”而不是“1”吗?

请参见https://dev59.com/nW035IYBdhLWcg3wPNdk。 - David
搞定了。我使用了Martin Smith的答案,使用了RIGHT函数。谢谢。 - user912447
1个回答

7

将其包装在:

right('0' + convert(...), 2)

或者:

right(100 + datepart(ww, ...), 2)

可以,这个可行。你也可以使用RTRIM代替CONVERT,只需执行以下操作:right('0'+rtrim(datepart(ww,'2013-4-20 11:00:00.000')), 2) - user912447

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接