• Something like this?

    ;WITH family1 AS (

    SELECT DISTINCT InvoiceID

    FROM invoiceDetails

    WHERE ItemCode LIKE 'PMM1%'

    ), family2 AS (

    SELECT DISTINCT InvoiceID

    FROM invoiceDetails

    WHERE ItemCode LIKE 'PMM2%'

    ), family3 AS (

    SELECT DISTINCT InvoiceID

    FROM invoiceDetails

    WHERE ItemCode LIKE 'PMM3%'

    )

    SELECT SalesRepID, COUNT(*) FROM Invoices i

    INNER JOIN family1 f1 ON f1.invoiceID = i.InvoiceID

    INNER JOIN family2 f2 ON f2.InvoiceID = i.InvoiceID

    INNER JOIN family3 f3 ON f3.InvoiceID = i.InvoiceID

    GROUP BY SalesRepID

    .