SQL Abfrage mit mehreren Filtern auf eine Spalte

  • #1
A

af09940

Neues Mitglied
Themenersteller
Dabei seit
09.02.2009
Beiträge
2
Reaktionspunkte
0
Hallo zusammen,

ich hab nun schon einiges versucht, komme aber nicht weiter.

Gibt es eine Möglichkeit, in einer Tabelle z.B. im Feld Rechnungs_Datum nach verschiedenen Jahren zu suchen und dann die Datensätze dieser Jahre zu zählen und in berechneten Feldern einer Abfrage diese Anzahlen auszugeben? Sollte dann so aussehen:

KundenNr Name Vorname Rechnungen_in_2007 Rechnungen_in_2008 Rechnungen_in-2009 Rechnungen_Gesamt

12345 Müller Eva 2 4 8 14
12468 Schmitz Willi 8 15 12 35
. .
. .
. .

usw...

Dabei sollen alle Kunden gruppiert werden und die Anzahl der Rechnungen für diesen Kunden für die vorhergehenden und des aktuellen Jahres sowie die Gesamtsumme aller Rechnungen für diesen Kunden angezeigt werden.

Wenn hierzu jemand eine Idee hätte, das wäre prima.

Vielen Dank schonmal... - und- bis bald... :)
 
  • #2
Hi!

Gibt mehrere Ansätze wie man das lösen könnte.

1. Joins
2. Subselects

Schneller sind definitiv die Joins, aber manchmal auch etwas komplizierter. In deinem Fall sollte das aber kein Problem sein!
Je nach Datengröße und Indexen könntest du auch Subselects nehmen, sind keine Index-Felder vorhanden, könntest du bei vielen Tupeln schnell Performanceprobleme bekommen, aber ein Index erzeugen geht auch flott.

Tip:
Du kannst Datumsfelder in T-SQL auch filtern nach Jahren: SELECT YEAR(Rechnungs_Datum) AS Jahr FROM Table1
Was nicht schlecht wäre, ist eine kleine Auflistung deiner Tabellen mit den Feldern, um dir besser helfen zu können.

Lieben Gruß
 
Thema:

SQL Abfrage mit mehreren Filtern auf eine Spalte

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.839
Beiträge
707.962
Mitglieder
51.492
Neuestes Mitglied
Janus36
Oben