La query che devi ottenere, non fa altro che riportare la Data(MIN) e Data(MAX) per ogni "motivo" della tabella.
Per fare quanto chiesto devi ricorrere ad una Query Raggruppata con Tabelle derivate...
Ti faccio un'esempio di come in un caso simile, estraggo il Prezzo Massimo ed il Minimo per ogni Prodotto di una Tabella...
MASSIMO
Select T1.Provenienza,MAXP.IdProdotto,MAXP.Massimo
From T1
RIGHT JOIN
(select IdProdotto, Max(Prezzo) as Massimo
From T1
Group By IdProdotto) AS MAXP
ON T1.IdProdotto=MAXP.IdProdotto AND T1.Prezzo=MAXP.Massimo
MINIMO
Select T1.Provenienza,MINP.IdProdotto,MINP.Minimo
From T1
RIGHT JOIN
(select IdProdotto, Min(Prezzo) as Minimo
From T1
Group By IdProdotto) AS MINP
ON T1.IdProdotto=MINP.IdProdotto AND T1.Prezzo=MINP.Minimo
Tu devi ottenere sia il MAX che il MIN... nello stessi Record, quindi devi mettere i 2 predicati assieme...