Кто-то на этой ссылке провел некоторое тестирование "не существует", "не существует", "против левого соединения-это-ноль". Postgre может сказать, что несуществующее и левое соединение равно нулю, являются анти-соединениями, и поэтому происходит соответственно. Так что ваш метод должен быть наиболее эффективным. Возможно, вы могли бы реструктурировать подход «оставайся равнодушным», но он, вероятно, ничего не купит.
Профилактика может быть лучше. Ограничение внешнего ключа - лучший вариант с удалением каскада. Вы упоминаете в комментариях к вашему вопросу, что это не вариант. Разве это не вариант в ваших конкретных обстоятельствах, потому что, как правило, это:
REFERENCES someTable(someCol) ON DELETE CASCADE ON UPDATE CASCADE