P.S.: 4. das Count(feldname) durch count(*) ersetzen
Kommt drauf an, was man zählen will.
SELECT count(*) AS Datensätze, count(Feld) AS NichtLeer FROM Tabelle
count(*)
zählt alle Datensätze und
count(Feld)
zählt nur mit, wenn etwas in "Feld" drin ist. (
Feld IS NOT NULL
)
Ich glaub das
GROUP BY
könnte man auch weglassen, da bestimmt schon über das Count
gruppiert zusammengefasst wird und es sowieso nur noch das Feld "teamA" gibt, welches keine Aggregate-Function ist.
SQL-Code:
SELECT teamA, count(*)
FROM spiel
JOIN tor ON spiel.recno = spielnr
Mit einem LEFT JOIN würde man dann auch die Teams ohne Tore erwischen.
SQL-Code:
SELECT teamA, count(tor.recno)
FROM spiel
JOIN tor ON spiel.recno = spielnr