Zum Inhalt dieser Seite

2.4 Nullwerte in Kreuztabellen

Angenommen man hat folgende Tabelle:

Beispieldatensätze

Daraus möchte man eine Kreuztabellenabfrage mit "Kundenname" als Zeilenüberschrift und "Artikelname" als Spaltenüberschrift erstellen. Die SQL-Ansicht dieser Abfrage würde ungefähr so aussehen:

TRANSFORM Count(tblBestellungen.ID) AS [Anzahl von ID]
SELECT
  tblBestellungen.Kundenname,
  Count(tblBestellungen.ID) AS Gesamtanzahl
FROM tblBestellungen
GROUP BY tblBestellungen.Kundenname PIVOT tblBestellungen.Artikelname;
 

Im Entwurf sähe die Abfrage so aus:

Ursprüglicher Entwurf der Crosstab-Query

Das Ergebnis liefert dann aber bei den gegebenen Daten in einigen Spalten "Null":

Ergebnisansicht mit Null-Werten

Um daraus 0 als Wert zu erhalten, wechselt man wieder in den Entwurf und ändert die markierten Teile:

Anpassung der Crosstab-Query im Entwurf

In der SQL-Ansicht sähen die Änderungen so aus:

TRANSFORM Val(Nz(Count([ID]),0)) AS Ausdr1
SELECT 
  tblBestellungen.KundenName, 
  Count(tblBestellungen.ID) AS Gesamtanzahl
FROM tblBestellungen
GROUP BY tblBestellungen.KundenName PIVOT tblBestellungen.ArtikelName;
 

Nun hat man endlich das Ergebnis, das man haben möchte:

Ergebnisansicht der angep. Crosstab-Query

Home