Zum Inhalt springen

Zeilen aus einer anderen Tabelle kopieren


alobar

Empfohlene Beiträge

Hallo,

es geht um folgende Aufgabe:

Es sollen alle Zeilen mit einem Spaltenwert von "d_std > 2000 aus der Tabelle CAR in die Tabelle CABC kopiert werden.

Die Tabelle CABC enthält die Spalten "herst", "typ", "ser_nr" und "wartungsdatum" mit denselben entsprechenden Datentypen wie die Tabelle CAR.

Es soll zum Kopieren eine Unterabfrage verwendet werden.

Die Klausel zum Einfügen einer Zeile in die Tabelle CABC soll die Spaltenliste "herst", "typ" und "ser_nr" enthalten.

Die Tabelle CAR besitzt folgende Spalten:

"herst", "typ", "ser_nr", "d_std" und "an_datum".

Für Lösungsvorschläge wäre ich sehr dankbar.

Vielen Dank im Voraus.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo MartinSt,

deine Fragen sind berechtigt und die Informationen zu meiner Anfrage waren auch nicht vollständig.

Daher noch folgender Sachverhalt:

- Die Tabelle CABC muss neu angelegt werden.

- Innerhalb der CREATE TABLE-Anweisung soll eine Unterabfrage erfolgen, in der die

Datensätze "d_std > 2000" aus der Tabelle CAR in die neue Tabelle CABC kopiert

werden.

- Die neue Tabelle CABC soll die Spalten "herst", "typ", "ser_nr" enthalten,

die auch die Tabelle CAR enthält.

- Problem: Zusätzlich soll das Attribut "wartungsdatum" in die neue Tabelle

aufgenommen werden (Datentyp DATE), das keine Daten enthalten soll.

Dieses Attribut existiert so nicht in der Tabelle CAR, dafür besitzt diese Tabelle das

Attribut "an_datum", mit Daten zum Anschaffungsdatum (Datentyp DATE).

Quelltabelle:

CAR mit den Attributen "herst", "typ", "ser_nr", "d_std", "an_datum" gefüllt mit Werten.

Zieltabelle:

CABC mit den Attributen "herst", "typ", "ser_nr" gefüllt mit entsprechenden Werten, "wartungsdatum" bleibt leer.

Daher waren meine Überlegungen bis jetzt folgende:

create table CABC

as select herst, typ, ser_nr

from CAR

where d_std > 2000;

Die Anweisung funktioniert so weit.

Wie erhalte ich aber das Attribut "wartungsdatum" ohne Datensätze aus der Tabelle CAR in die neue Tabelle CABC?

Es könnte ein JOIN zur Lösung führen, da müsste ich aber im Moment noch passen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

wenn ich dich recht verstanden habe gibt es keine daten die du in wartungsdatum übernehmen kannst/willst

in dem Fall kannst du auch an der stelle einen einfachen ausdruck mit in das select aufnehmen. zb SELECT DATE('') AS 'wartungsdatum' und dann den rest so wie du es schon hast. nachteil wäre hier nur das dann standardmäßig überall der 1.1.1970 das wartungsdatum ist, weil die 0 halt auch als datum interpretiert wird.

getestet unter MySQL 5.x, in MSSQL müsste es auch so/ähnlich funktionieren, oracle keine ahnung vermutlich aber schon.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...