SELECT @no=a.RowNum FROM (SELECT ROW_NUMBER() over(order by lx1,lx2) as RowNum,lx1,lx2,dh,gn,jh FROM scjda WHERE jh=@iReaderID) a WHERE a.lx1=@gnlx1 and a.lx2=@gnlx2
IF @no is null SET @no=1
SELECT top 1 @n_gnlx1=a.lx1,@n_gnlx2=a.lx2,@dh=a.dh,@gn=a.gn FROM (SELECT ROW_NUMBER() over(order by lx1,lx2) as RowNum,lx1,lx2,dh,gn,jh FROM scjda WHERE jh=@iReaderID) a WHERE a.RowNum=@no+1 or a.RowNum=1 order by a.RowNum desc
UPDATE emp SET sczt=0,iGNLX1=@n_gnlx1,iGNLX2=@n_gnlx2,dh=@dh,gn=@gn,zhtxsj=GETDATE() WHERE ReaderID = @iReaderID
select * from (SELECT SUM(NUM_QNTY4) AS sumNum, NUM_LINKID
FROM RW_STORE_QUNTY
GROUP BYNUM_LINKID ) a
left joinb on a.NUM_LINKID =b.NUM_LINKID
where a.NUM_LINKID = 1002
上面只是一个例句,你照着写就可以了,如果这种写不习惯,可以用临时表
比如(这是sqlserver特有的写法)
SELECT SUM(NUM_QNTY4) AS sumNum, NUM_LINKID
into #xu
FROM RW_STORE_QUNTY
GROUP BYNUM_LINKID
select * from #xu a inner join ddd b on ……
where ……
这也是一种写法
来自百度