yo,
ich kann jetzt falsch liegen, aber so kann das doch nicht klappen, oder?
habe nur die tabellen verwechselt, also joins richtig setzen und es geht.
SELECT l.kgz, l.name, (SELECT MIN(z.zahlen)
FROM plzgkz p
INNER JOIN zahlen z ON z.plz = p.plz1
WHERE substr(p.gkz, 1,5) = l.gkz
)
FROM landkreis l
;