我正在开设一个问题库,每个问题都有一个数字序列号。我的想法是使用每个表的主键,并根据需要简单地将它们组合到视图中的新列中。但显然,SQL Server将自动开始编号为1,我希望它们分别是01,02,03 ... 09,10。
这甚至可能吗?还是有另一种方法来完成我想要做的事情?我使用的是SQL Server 2014 Standard。谢谢!
答案 0 :(得分:3)
这听起来像是一个演示问题。我建议将计算列添加到零填充。这是一种方式:
alter table add questionid as (right(cast(10000 + id as varchar(255)), 2))
然后,您可以使用身份标识和零填充版本进行输出。
答案 1 :(得分:0)
不,那是不可能的。你可以做的是创建一个Sql View,它返回格式化为varchar(2)的id,如果它小于10,则将id附加到id。或者你可以使用varchar(2)作为主要标识符,但你可以必须在创建时手动创建id。