我正在尝试从此查询中获取最后一条记录,但我不知道该怎么做。我使用了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行,所以我不会把所有东西都放在一起)
我需要列中的总记录,如下所示:
我该怎么办?
韩国社交协会
答案 0 :(得分:1)
您也可以使用MAX(字段)。
但是,您正在使用ADVPL,因此您可以使用dbSeek来查找最后一个RECNO。
因此,使用“工作区”,您可以找到最后一条记录:
TRB->(RECCOUNT())
答案 1 :(得分:0)
我将ROW_NUMBER改为@@ ROWCOUNT,它有效!全部