Aber immer doch.
Ein "(select coalesce()...)" bringt nur dann etwas, wenn der Satz gefunden wird und der Feldinhalt NULL ist.
Ein "coalesce((select ...), 0)" bringt dann etwas, wenn der Select selber als Ergebnis NULL bringt.
Dabei ist es nun unabhängig ob kein Satz da ist oder der Feldinhalt als Ergbnis NULL bringt.