首页 > 解决方案 > 用 2 个表 SQL 分组

问题描述

对不起,我已经修改了我的问题,因为我找到了这段代码的部分解决方案:

 select C.NTERCERO as Cliente, V.inumsop as Factura, V.FSOPORT,  Sum(V.MPRECIOVTA) + Sum(Miva) as Monto
    From Abanits  as C 
    Inner Join Karmovun as V
    On C.init = V.Init
    Where V.FSOPORT between current_date -240 and current_date
    Group by c.NTERCERO, V.FSOPORT, V.INUMSOP
    order by v.fsoport desc

它会生成以下解决方案:

Banco de America Central S,A    FVE-025599  15.03.2019  719.1600
Banco de America Central S,A    FVE-025600  15.03.2019  1737.0100
Candido Cesar Saenz FVE-025585  15.03.2019  1923.0300
Casa del Café S.A   FVE-025610  15.03.2019  161.0000
Casa del Café S.A   FVE-025602  15.03.2019  1499.6100
Casa del Café S.A   FVE-025612  15.03.2019  3559.3800
Casa del Café S.A   FVE-025604  15.03.2019  1661.3200
Casa del Café S.A   FVE-025609  15.03.2019  1210.6100

Edwin Rommel Holmann Pastora    FVE-025606  15.03.2019  2498.9400
Edwin Rommel Holmann Pastora    FVE-025607  15.03.2019  1277.7100
Edwin Rommel Holmann Pastora    FVE-025608  15.03.2019  2325.3000

知道我只需要按 Fecha 及其金额提取每个客户的最后一票。Abanits 是客户表,Karmovun 是每次购买的细节。

标签: sql

解决方案


看起来 Fecha 没有时间获得最后一个 Factura。

我建议你通过做一个子串来提取你的 Factura 号码V.inumsop

substring(V.inumsop,5, len(V.inumsop)) as Numero_Factura

而你使用这个numero de factura, 只选择MAX分组的。

我假设您的 Factura 是按数字排序的,最高的应该是最新的。


推荐阅读