Consulta incompleta - MYSQL

Minha consulta até agora:

SELECT CD_no, purchasedate, COUNT(*) mostsales
FROM Sales A
GROUP BY CD_no, purchasedate
HAVING COUNT(*) =
        (SELECT MAX(mostsales)
         FROM
            (SELECT CD_no, purchasedate, COUNT(*) AS mostsales
                FROM Sales
            GROUP BY CD_no, purchasedate) B
            WHERE CD_no = A.CD_no)

Minha consulta até agora gera a partir de uma entrada de CD_no e compra, a data de achados teve mais vendas para esse CD específico. No entanto, isso só retorna um valor para cada número de CD. No entanto, pode haver a possibilidade de um CD_no ter exatamente as mesmas compras máximas em duas datas diferentes e, portanto, deve exibir as duas datas em relação ao número do CD.

Saída atual:

CD_NO           mostsales
1             2011-12-30
2             2012-03-22
3             2012-04-24

Saída desejada:

CD_NO           mostsales
1             2011-12-30
2             2012-03-22
3             2012-04-24
3             2012-04-22

A partir da entrada a seguir:

CD_NO         purchase_date
1              2011-12-30
1              2011-12-30
1              2011-12-29
1              2011-12-28
2              2012-03-22
2              2012-03-22
2              2012-03-21
3              2012-04-24
3              2012-04-24
3              2012-04-22
3              2012-04-22              
3              2012-04-21

questionAnswers(1)

yourAnswerToTheQuestion