来自查询SQL的最后一个REG

时间:2016-04-05 15:28:02

标签: sql sql-server tsql

我正在尝试从此查询中获取最后一条记录,但我不知道该怎么做。我使用了ROW_NUMBER,但我的程序(Protheus ADVPL)没有资源从查询中获取最后一行

SELECT ROW_NUMBER() OVER (ORDER BY B1_MASTER, B1_COD) AS ID, 
 B1_COD, 
   B1_DESC, 
   B1_CATEG, 
   B1_MASTER, 
   A2_COMPRAD, 
 ISNULL((SELECT Sum(C6_QTDVEN * C6_PRCVEN) 
           FROM   SC6010 SC6, 
                  SF4010 SF4, 
                  SC5010 SC5 
           WHERE  C6_FILIAL = '01' 
                  AND C6_PRODUTO = B1_COD 
                  AND SC6.D_E_L_E_T_ <> '*' 
                  AND C5_FILIAL = C6_FILIAL 
                  AND C5_NUM = C6_NUM 
                  AND C5_EMISSAO BETWEEN '20160401' AND '20160404' 
                  AND C5_TIPO = 'N' 
                  AND C5_MODAL = '2' 
                  AND SC5.D_E_L_E_T_ <> '*' 

(查询有106行,所以我不会把所有东西都放在一起)

我需要列中的总记录,如下所示:

Tabela

我该怎么办?

韩国社交协会

2 个答案:

答案 0 :(得分:1)

您也可以使用MAX(字段)。 但是,您正在使用ADVPL,因此您可以使用dbSeek来查找最后一个RECNO。 因此,使用“工作区”,您可以找到最后一条记录: TRB->(RECCOUNT())

答案 1 :(得分:0)

我将ROW_NUMBER改为@@ ROWCOUNT,它有效!全部