作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个订单表,将订单号存储为 NVarChar。我们通过按降序查询最大订单号并返回前 1 名然后加 1 来手动增加订单号。我们在 Microsoft CRM 4.0 中实现了这一点。
例如订单号 (NVarchar)
99
456
32
当我查询上述值时,它返回 99 而不是 456。我想使用 SQL Server 2005 中的 sql 脚本将所有当前订单号填充为类似 000099 或 000456 的内容。所以上面的示例将是
000099
000456
000032
我必须编写什么 SQL 脚本才能完成此操作?
最佳答案
这是关于 LessThanDot 的一个很棒的填充教程。
DECLARE @Numbers TABLE
(Num INT)
INSERT @Numbers VALUES('1')
INSERT @Numbers VALUES('12')
INSERT @Numbers VALUES('123')
INSERT @Numbers VALUES('1234')
INSERT @Numbers VALUES('12345')
INSERT @Numbers VALUES('123456')
INSERT @Numbers VALUES('1234567')
INSERT @Numbers VALUES('12345678')
SELECT RIGHT(REPLICATE('0', 8) + CONVERT(NVARCHAR(8),Num),8) FROM @Numbers
这将导致:
00000001
00000012
00000123
00001234
00012345
00123456
01234567
12345678
关于sql - 如何在 SQL Server 2005 数据库中使用 T-SQL 用零填充 NVARCHAR 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1111326/
我是一名优秀的程序员,十分优秀!