Daten hintereinander ausgeben?
-
Hallo,
ich habe eine Tabelle mit PersonenName, Anwesendheitsdatum, nun möchte ich alle
Daten ausgeben, in der diese Person anwesend ist:etwa so
Name | Datum | Datum | Datum
Peter 2005-01-09 2005-02-09 2005-03-08habe mit join herum probiert, er gibt sie aber nicht so aus.
-
Für den Anfang: SELECT * FROM Tabelle WHERE Name = 'Peter';
MfG
-
sql schrieb:
habe mit join herum probiert, er gibt sie aber nicht so aus.
Imho werden Datensätze immer Zeilenweise ausgegeben.
Da jedes Datum einem Datensatz entspricht stehen diese also jeweils in
einer neuen Zeile.SELECT Datum FROM Tabelle WHERE Name = 'Peter' ORDER BY Datum;
Dann das ganze im Programm durchlaufen und entsprechend formatiert ausgeben.
-
@Tanzfreak: C++Forum-Clown?????
@anonymus: das in Java einzubinden und zu verarbeiten ist ja kein Problem,
ich will alles mit einer select Anweisung machen.
-
Mit einem einfachen Statement ist das nicht möglich.
Je nach Datenbank sollte es allerdings mit einer Stored Procedure möglich sein, den Select aufzurufen, durch alle Ergebniszeilen zu iterieren, die Werte nacheinander in einen String zu schreiben und diesen dann zurückzugeben.
-
Unsere Sybase Datenbank versteht dieses Konstrukt:
FOR Test AS Cursor cur FOR SELECT Name FROM Personen DO SELECT PersName, Datum FROM Anwesenheit WHERE PersName = Name END FOR