WITH Stage1 AS
(
SELECT
Taco_ID,
Taco_date = MIN(Taco_date)
FROM Taco
GROUP BY
Taco_ID,
Taco_value
),
Stage2 AS
(
SELECT
Taco_ID,
Taco_date = MAX(Taco_date) OVER (
PARTITION BY Taco_ID)
FROM Stage1
)
SELECT DISTINCT
Taco_ID,
Stage2.Taco_date
FROM Stage2;