smalldatetime
a une portée jusqu'au 6 juin 2079, vous pouvez donc utiliser
ORDER BY ISNULL(Next_Contact_Date, '2079-06-05T23:59:00')
Si aucun enregistrement légitime n'aura cette date.
Si ce n'est pas une hypothèse, vous avez envie de vous fier à une option plus robuste qui consiste à trier sur deux colonnes.
ORDER BY CASE WHEN Next_Contact_Date IS NULL THEN 1 ELSE 0 END, Next_Contact_Date
Cependant, les deux suggestions ci-dessus ne permettent pas d'utiliser un index pour éviter un tri et donnent des plans similaires.
Une autre possibilité si un tel index existe est
SELECT 1 AS Grp, Next_Contact_Date
FROM T
WHERE Next_Contact_Date IS NOT NULL
UNION ALL
SELECT 2 AS Grp, Next_Contact_Date
FROM T
WHERE Next_Contact_Date IS NULL
ORDER BY Grp, Next_Contact_Date