Entrambi funzionano allo stesso modo, perché la clausola SELECT in EXISTS non viene mai valutata. Puoi testare usando:
... EXISTS(SELECT 1/0 FROM TABLE)
Ciò dovrebbe innescare un errore di divisione per zero, ma non lo farà.
Personalmente preferisco usare NULL perché è ovvio che nella tabella non viene fatto riferimento a nulla, quindi è più visibile agli altri. La selezione di un valore, come il numero INT 1 nel secondo esempio, può portare a supposizioni su ciò che sta accadendo se non si ha familiarità con la clausola EXISTS.