La clause where correspondra à toutes les lignes dont la date est inférieure à @CurrentDate et, puisqu'elles sont classées par ordre décroissant, le TOP 1 sera la date la plus proche de la date actuelle.
SELECT TOP 1 *
FROM x
WHERE x.date < @CurrentDate
ORDER BY x.date DESC