如何使用SQL
以“0000012”的格式显示数字“12”答案 0 :(得分:4)
如果您只想要数字12那么
SELECT '0000012'
否则,如果是一个数字,则需要显示7位数字:
SELECT RIGHT('0000000'+CONVERT(nvarchar,FieldValue),7)
有关该问题的更多信息会有所帮助。
答案 1 :(得分:2)
像
这样的东西DECLARE @Val INT
DECLARE @Length INT
SELECT @Val = 12,
@Length = 7
SELECT REPLICATE('0',@Length - LEN(CAST(@Val AS VARCHAR(MAX)))) + CAST(@Val AS VARCHAR(MAX))
重复指定的字符串值 次数。
答案 2 :(得分:1)
可能也最有效的最短答案就是
SELECT RIGHT(10000000+ @Val, @Length)
e.g。
SELECT RIGHT(10000000+ NumColumn, 7)
答案 3 :(得分:0)
我没有要测试的服务器,但您应该能够在SQL中使用以下内容:
'RN ' + RIGHT(CAST(auto_id AS VarChar) + '000000', 6)
例如: 代码:
SELECT 'RN ' + RIGHT(CAST(auto_id AS VarChar) + '000000', 6)
FROM tablename
答案 4 :(得分:0)
效率不高但适用于您的情况 -
DECLARE @num int
DECLARE @totalChar int
SET @num = 12
SET @totalChar = 10
SELECT right('0000000000' + CONVERT(varchar, @num), @totalChar)
输出 -
000000012
答案 5 :(得分:0)
这应该很容易移植到其他SQL:
SELECT
REVERSE(CAST(REVERSE(CAST(CAST(12 AS INTEGER) AS VARCHAR(7))) + '000000' AS CHAR(7)))
答案 6 :(得分:0)
SELECT REPLACE(STR(12, 7), ' ', '0')