我正在尝试获取连续的行编号,但无论我尝试什么都行不通。这是我的查询
select
l.seq, l.mn_no as mn_no, l.sb_no as sb_no,
l.dp_no as dp_no,
sum(costprice) as amt
from
dbo.mac_pur_tempdetail d
inner join
dbo.mac_pur_tempheader h on d.header_id = h.header_id
and h.ref = 'SAH1FIHC'
inner join
dbo.mac_actlocmap l on l.loc_main = d.loc_id
and l.description = 'PUR'
group by
l.seq, l.mn_no, l.sb_no, l.dp_no
这是该查询的结果
1 4110 30 0000 17.5000
4 4110 20 0000 3.6000
6 4110 40 0000 6.0000
7 4110 10 0000 1.8000
14 4110 25 0000 3.6000
15 4110 50 0000 1.8000
我试过
select
(select count(seq)
from dbo.mac_actlocmap s
where s.seq <= a.seq and a.mn_no = s.mn_no) as new_seq,
*
from
(select
l.seq, l.mn_no as mn_no,
l.sb_no as sb_no, l.dp_no as dp_no,
sum(costprice) as amt
from
dbo.mac_pur_tempdetail d
inner join
dbo.mac_pur_tempheader h on d.header_id = h.header_id
and h.ref = 'SAH1FIHC'
inner join
dbo.mac_actlocmap l on l.loc_main = d.loc_id
and l.description = 'PUR'
group by
l.seq, l.mn_no, l.sb_no, l.dp_no) a
但结果是
1 1 4110 30 0000 17.5000
2 4 4110 20 0000 3.6000
3 6 4110 40 0000 6.0000
4 7 4110 10 0000 1.8000
7 14 4110 25 0000 3.6000
8 15 4110 50 0000 1.8000