![]() |
Datenbank: SQL • Version: 2000 • Zugriff über: ADO
select count()
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
kann mir jemand bei folgender Abfrage helfen: Bestell-Datensatz besteht u.a. aus den Feldern Artikel_1,Artikel_2,Artikel_3. Ich brauche eine Übersicht wie oft die verschiedenen Artikel bestellt wurden also count(art). Da der gleiche Artikel in jeder der 3 Artikel-Spalten vorkommen kann, verwendet ich eine union-Abfrage, nach der taucht aber jeder Artikel nur einmal auf, d.h. count funktioniert hier nicht? |
AW: select count()
Zitat:
[edit] Vielleicht so (ungetestet)?
SQL-Code:
Das setzt voraus, dass in den Bestellungen die Fremdschlüssel auf die Artikeltabelle hinterlegt sind und jeder Artikel nur einmal je Bestellung vorkommen kann. [/edit]
SELECT
A.Artikelbezeichnung, COUNT(*) FROM Artikel A JOIN Bestellungen B ON A.ID = B.Artikel_1 OR A.ID = B.Artikel_2 OR A.ID = B.Artikel_3 GROUP BY A.Artikelbezeichnung |
AW: select count()
Deddy,
ja die Daten sind nicht normiert, alle relevanten Informationen befinden sich in einer einzigen Tabelle, jaher benötige ich auch kein join auf eine andere Tabelle. |
AW: select count()
Ich habe mir Dein Statement noch einmal angeschaut. Klappt das, wenn Du UNION ALL verwendest? IIRC filtert UNION Doppler heraus, das ist ja nicht das, was Du willst.
|
AW: select count()
Zitat:
"Ja ich hab einen Tankwagen als Anhänger, dann muß ich auch nicht zu einer Tankstelle fahren". :mrgreen: Wie wäre es hiermit:
Code:
um reckey zu belegen wäre eine Datensatz_ID natürlich am besten geeignet.
select art,count(reckey) as cnt from
( select art_1 art,art_1 reckkey from bestg where datum>='28.03.2013' union select art_2 art,art_1 reckkey from bestg where datum>='28.03.2013' union select art_3 art,art_1 reckkey from bestg where datum>='28.03.2013' ) group by art order by art Gruß K-H |
AW: select count()
genau das wars, mit union all bekomme ich die korrekte Anzahl wie oft die einzelnen Artikel verwendet werden, egal in welcher der 3 möglichen Spalten sie auftauchen.
Danke DeddyH |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz