Sie benötigen ein GROUP BY
in Ihrer äußeren Abfrage, ansonsten zählt die Abfrage einfach den Status für alle Banken. Sie können Ihre Abfrage auch vereinfachen, indem Sie einfach LEFT JOIN
verwenden die beiden Tabellen auf Code/ID und Status =0
SELECT b.type `scu_banks.type`,
b.name `scu_banks.name`,
COUNT(s.status) `status`,
b.id `scu_banks.id`
FROM scu_banks b
LEFT JOIN scu_statement s ON s.code = b.id AND s.status = 0
GROUP BY b.id, b.name, b.type
Ausgabe
scu_banks.type scu_banks.name status scu_banks.id
1 One 2 1
1 Two 1 2
2 Three 0 3
3 Four 0 4