How does the ROW_NUMBER() approach compare with using self-joins as follows?
SELECT Previous.Category, Previous.Date, Next.Date
FROM Dates.CategoryDate Previous LEFT JOIN Dates.CategoryDate Next ON Previous.Category = Next.Category AND Previous.Date < Next.Date
LEFT JOIN Dates.CategoryDate...