• I won't use COALESCE, because it's broken:

    SELECT COALESCE((SELECT CASE WHEN RAND() <= 0.5 THEN 999 END), 999);

    SELECT ISNULL((SELECT CASE WHEN RAND() <= 0.5 THEN 999 END), 999);

    The final 999 value in both forms should ensure the overall result is never NULL, right?

    Paul