根据数量自动生成标签序列号
数据数量字段 在料号后面加以数量为序列号如下图
料号 数量
A 100
B 2
如何查找格式为如下
号号 数量 标签号
A 100 A-001
A 100 A-002
...........
A 100 A-100
B 2 B-001
B 2 B-002
谢谢
[解决办法]
create table les
(料号 varchar(5), 数量 int)
insert into les
select 'A', 100 union all
select 'B', 2
select a.料号,
a.数量,
a.料号+'-'+replicate('0',3-len(c.number))+rtrim(c.number) '标签号'
from les a
cross apply
(select b.number
from master.dbo.spt_values b
where b.type='P'
and b.number between 1 and a.数量) c
/*
料号 数量 标签号
----- ----------- --------------
A 100 A-001
A 100 A-002
A 100 A-003
A 100 A-004
A 100 A-005
A 100 A-006
A 100 A-007
A 100 A-008
A 100 A-009
A 100 A-010
A 100 A-011
A 100 A-012
A 100 A-013
A 100 A-014
A 100 A-015
A 100 A-016
A 100 A-017
A 100 A-018
A 100 A-019
A 100 A-020
A 100 A-021
A 100 A-022
A 100 A-023
A 100 A-024
A 100 A-025
A 100 A-026
A 100 A-027
A 100 A-028
A 100 A-029
A 100 A-030
A 100 A-031
A 100 A-032
A 100 A-033
A 100 A-034
A 100 A-035
A 100 A-036
A 100 A-037
A 100 A-038
A 100 A-039
A 100 A-040
A 100 A-041
A 100 A-042
A 100 A-043
A 100 A-044
A 100 A-045
A 100 A-046
A 100 A-047
A 100 A-048
A 100 A-049
A 100 A-050
A 100 A-051
A 100 A-052
A 100 A-053
A 100 A-054
A 100 A-055
A 100 A-056
A 100 A-057
A 100 A-058
A 100 A-059
A 100 A-060
A 100 A-061
A 100 A-062
A 100 A-063
A 100 A-064
A 100 A-065
A 100 A-066
A 100 A-067
A 100 A-068
A 100 A-069
A 100 A-070
A 100 A-071
A 100 A-072
A 100 A-073
A 100 A-074
A 100 A-075
A 100 A-076
A 100 A-077
A 100 A-078
A 100 A-079
A 100 A-080
A 100 A-081
A 100 A-082
A 100 A-083
A 100 A-084
A 100 A-085
A 100 A-086
A 100 A-087
A 100 A-088
A 100 A-089
A 100 A-090
A 100 A-091
A 100 A-092
A 100 A-093
A 100 A-094
A 100 A-095
A 100 A-096
A 100 A-097
A 100 A-098
A 100 A-099
A 100 A-100
B 2 B-001
B 2 B-002
(102 row(s) affected)
*/