;WITH InvoiceTemp AS (SELECT Invoice.Numero,Invoice.NoClient,Invoice.NoStatus, ROW_NUMBER() OVER (PARTITION BY Invoice.NoClient ORDER BY AddDate DESC) AS RowNumber, COUNT(*) OVER (PARTITION BY Invoice.NoClient) AS RowTotal FROM Invoice) SELECT * FROM InvoiceTemp WHERE InvoiceTemp.RowNumber<RowTotal AND InvoiceTemp.NoStatus=7 AND EXISTS (SELECT * FROM InvoiceTemp InvoiceTemp2 WHERE InvoiceTemp2.RowNumber=2 AND InvoiceTemp2.NoStatus=7 AND InvoiceTemp.NoClient=InvoiceTemp2.NoClient)But, that gets all Completed, in the child records, and even the first one.