在SQL Server 2008中使用和显示插入的数字

本文关键字:显示 插入 数字 SQL Server 2008 | 更新日期: 2023-09-27 18:11:28

我有一个发票表,其中包含从0开始的发票号码。" 120 "

那么,当数据显示时,我如何保存Inv_Num列零?所以当它显示的时候看起来像"0000120"。

我已经定义了我的表:

Create Table Invoice_Report(Inv_Num int not null, Inv_Date date, orderNum int not null)

如果有任何帮助,提前感谢。

在SQL Server 2008中使用和显示插入的数字

int是包含数值的数据类型。"0000120"是该数字的表示形式。那是不一样的。

如果你想有一个表示的值,使用字符串,或者在SQL Server中,varchar(x)

假设您希望总输出长度为7个字符,您可以像下面这样填充前导零:

select RIGHT(cast('0000' + col as varchar(3)), 7) from someTable

数字填充解决了这个问题:

SELECT Inv_Num = REPLACE(STR(Inv_Num, 7), SPACE(1), '0') FROM Invoice

阅读更多:http://www.sqlusa.com/bestpractices/pad/