Veröffentlicht 1. April 200421 j Hi @ all, ich habe vollgende Abfrage: SELECT Wert1 COUNT(Wert1) AS [Anzahl von Wert1] FROM Tabelle1 GROUP BY Wert1 HAVING (((Wert1)="wert")); Nun möchte ich gerne wissen ob und/oder wie es möglich ist, bei nichtvorhandenen Werten einen automatischen "Null" oder "0" wert generieren zu lassen, um ein ergebnis in "Anzahl von Wert1" stehen zu haben... MfG Oggie
2. April 200421 j Um 23:30 mit Oracle zu arbeiten is hart Der Befehl, den du suchst ist NVL nvl(e1, e2) ist e1 NULL dann e2 sonst e1
2. April 200421 j Oh ähm das hätte ich vieleicht erwähnen sollen ^^, funzt das auch in Access? Bin gerade mit einer Access 97 Datenbank beschäftigt Trotzdem Danke schon mal für die antwort.
2. April 200421 j Original geschrieben von Oggie85 funzt das auch in Access? Direkt per SQL wüßte ich nicht, aber per VBA geht das so: if IsNull(Wert1) then Wert1=0
2. April 200421 j Oh hm mit VBA habe ich bis jetzt nicht gearbeitet... also ist meine nächste Frage, wie binde ich das in die Abfrage ein?
2. April 200421 j Sag mal, müsste bei der Abfrage nicht automatisch 0 herauskommen, wenn kein Datensatz gefunden wird? Wenn Count keine Datensätze zum Zählen findet, isses doch 0... Wenn's allerdings statt 0 "NULL" ausgeben soll, kannste ja eine WENN-Abfrage benutzen, die bei dem Ergebnis 0 halt NULL ausgibt und ansonsten den Zähler: SELECT Wert1, IIf(Count(Wert1)=0,Null,Count(Wert1)) AS [Anzahl von Wert1] FROM Tabelle1 WHERE (Wert1 = 'wert') GROUP BY Wert1 Das sollte eigentlich funzen...
2. April 200421 j Also beim Zählen von zb. Datum, funzt es mit der Automatischen 0 zälung von count aber bei Meiner Abfrage mit den Anzahl zu einem Mitarbeiter funzt es nicht ... desswegen der umständliche weg... Ähm und du meinst "IF" oder ? dann werd ich das mal ausprobieren...
2. April 200421 j Hmm, Danke erst mal für die ganzen Antworten Hat aber alles so nicht gefunzt... habe jetzt aber den fehler gefunden warum count mir keine null ausgegeben hat. Ich hatte die Anweisung in etwa in der Form: SELECT Tabelle.WERT1, Count(Tabelle.WERT2) AS [Anzahl von Wert2] FROM Tabelle GROUP BY Tabelle.WERT1 HAVING (((Tabelle.WERT1)="xy")); Nun habe ich die Anweisung wie Folgt umgeschreiben: SELECT Count(Tabelle1.WERT2) AS [Anzahl von WERT2] FROM Tabelle1, Tabelle2 WHERE (((Tabelle1.WERT2")="xy") AND ((Tabelle1.WERT1)=[Tabelle2].[WERT1])); Bei dieser anweisungsfolge zählt count auch wieder "0"
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.