SQL Server - 删除具有条件的重复行

时间:2018-05-31 22:20:33

标签: sql-server duplicates

我是SQL的新手并且开始使用它,但我遇到了障碍,可以真正使用一些帮助。

我正在运行查询 - 示例如下:

SELECT
    A.column1, 
    SUM (A.column2) AS column2,
    B.Purchase_Order,
    C.Date_Purchase_Order,
    D.Invoice_Number, D.Date_Payment_Invoice,
    E.column7,
    ROW_NUMBER () OVER (PARTITION BY CONCAT(A.column1) ORDER BY A.column1) AS Count_Duplicates
FROM 
    Table A
LEFT JOIN 
    Table B 
LEFT JOIN 
    Table C 
LEFT JOIN  
    Table D 
LEFT JOIN 
    Table E 
GROUP BY 
    A.column1, A.column2, B.Purchase_Order, C.Date_Purchase_Order, 
    D.Invoice_Number, D.Date_Payment_Invoice, E.column7

Purchase_OrderDate_Purchase_Order的输出文件由行给出 - 因此,如果采购订单的价值为1,000.00美元和10行产品,则在1,000.00返回10行购买,这些行的不同日期被批准了。当我总结采购订单的价值时,它返回10,000美元而不是1,000

我需要做的是基于row_number计数是识别最近的日期并删除旧的日期,记住有5行的PO,1行(不应该删除),100行

感谢所有支持!

0 个答案:

没有答案