Headnutmaster Geschrieben 24. August 2009 Teilen Geschrieben 24. August 2009 Ich ein ziemlicher Neuling und bin dabei eine SQL-Abfrage zun basteln. Ich konnte leider nichts passendes für dieses Thema finden... Meine Frage ist folgende: Wie kann ich doppelte Einträge in eine neu Spalte schreiben? Also die Tabelle schaut so aus: l_ID---Datum----Wert 3------Datum1---Wert1 7------Datum1---Wert1 2------Datum1---Wert1 3------Datum2---Wert2 4------Datum1---Wert1 2------Datum2---Wert2 3------Datum3---Wert3 ..... und ich möchte folgendes Ergebniss: l_ID--Datum-----Wert-----Datum-----Wert-----Datum-----Wert 2-----Datum1----Wert1---Datum2----Wert2 3-----Datum1----Wert1---Datum2----Wert2---Datum3---Wert3 4-----Datum1----Wert1 7-----Datum1----Wert1 Kann mir da jemand einen Tipp geben mit welchen Befehlen das möglich gemacht werden kann. Danke schon mal im vorhinein! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 24. August 2009 Teilen Geschrieben 24. August 2009 Für mich ist es unverständlich wie das überhaupt so vorkommen kann, denn es scheint ja kein PK auf der Tabelle definiert zu sein. Du wirst letztendlich nicht um das Problem herum kommen, dass Du jeden Datensatz mit Dubletten selektieren musst und die Dubletten anhand Deiner Definition auf die richtigen Spalten verteilst. Hier wäre ein Stored Procedure sinnvoll. Das DBMS unterscheidet eindeutige Datensätze anhand des PKs, wenn dieser nicht richtig ist, so wie bei Dir, dann gibt es keinen Automatismus, der das für Dich erledigt. Wenn Du nicht anhand der Datenwerte Unterschiede fest machen kannst, dann musst Du Datensatz für Datensatz abarbeiten. Meine Ansicht nach, ist so etwas ein Designfehler Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Headnutmaster Geschrieben 24. August 2009 Autor Teilen Geschrieben 24. August 2009 Ich habe gerade gesehen das es einen PK geben dürfte jedoch fängt er nicht bei 1 an und steigt sprunghaft und sporadisch an! Jedoch ist er eindeutig. Ist es damit dann leichter? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dbwizard Geschrieben 24. August 2009 Teilen Geschrieben 24. August 2009 (bearbeitet) Ich habe gerade gesehen das es einen PK geben dürfte jedoch fängt er nicht bei 1 an und steigt sprunghaft und sporadisch an! Jedoch ist er eindeutig. Ist es damit dann leichter? Hallo, Ich habe gerade keine Zeit, dies hier direkt zu posten, aber schaue mal unter folgendem Link nach, dies sollte für dich passen Oracle SQL und PL/SQL ...: Kreuztabellen (pivot tables) mal anders genutzt ... (Bin nun mal davon ausgegangen, das du Oracle benutzt, da du dein System nicht angegeben hast :-)) Gruss Bearbeitet 24. August 2009 von dbwizard Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Headnutmaster Geschrieben 24. August 2009 Autor Teilen Geschrieben 24. August 2009 Ich habe gerade gesehen das es einen PK geben dürfte jedoch fängt er nicht bei 1 an und steigt sprunghaft und sporadisch an! Jedoch ist er eindeutig. Ist es damit dann leichter? Falscher Alarm gibts doch nicht ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dbwizard Geschrieben 24. August 2009 Teilen Geschrieben 24. August 2009 Falscher Alarm gibts doch nicht ... Aber welche Datenbank verwendet du denn ? gruss Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Headnutmaster Geschrieben 24. August 2009 Autor Teilen Geschrieben 24. August 2009 oracle Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dbwizard Geschrieben 24. August 2009 Teilen Geschrieben 24. August 2009 oracle ok, dann versuche mal den Link, den ich dir weiter oben geschickt habe. Gruss Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.