Oba fungují stejně, protože klauzule SELECT v EXISTS se nikdy nevyhodnocuje. Můžete testovat pomocí:
... EXISTS(SELECT 1/0 FROM TABLE)
To by mělo spustit chybu dělení nulou, ale ne.
Osobně dávám přednost použití NULL, protože je zřejmé, že v tabulce není nic odkazováno, takže je to pro ostatní viditelnější. Výběr hodnoty, jako je INT číslo 1 ve druhém příkladu, může vést k předpokladům o tom, co se děje, pokud neznáte klauzuli EXISTS.