Inhalt v. Spalte sp_x der Tabelle tab_x in Spalte sp_y in Tabelle tab_y einfügen

webdev

Mitglied
Hallo alle

vermutlich ist das kinderleicht aber ich komme nicht drauf. Ich habe eine alte Tabelle, die in mehrere Tabellen zerlegt worden ist. Die neuen Tabellen sind nur von der Struktur her angelegt, enthalten noch keine Daten. D.h. bis auf eine: die Tabelle 'adressen_neu' enhält bereits die ID-Nummern. Die einzufügen war einfach :-) Aber da die Reihenfolge der Spalten in der neuen Tabelle nicht mehr gleich ist, kann man die alten Daten nicht einfach in die neue Tabelle kopieren Nun hab ich mir überlegt, das spaltenweise zu tun. Die alte Tabelle heisst 'adressen', die neue 'adressen_neu'. Ich habs so versucht, aber das scheint falsch zu sein:

INSERT sp1
FROM adressen
INTO sp1
FROM adressen_neu

Die Fehlermeldung ist 'You have an error near line 1.

Meine Frage an Euch: wie kann ich den Inhalt einer Spalte von einer Tabelle x in eine andere Tabelle y einfügen? Muss ich mittels 'drop' in der neuen Tabelle zuerst die existierende Spalte löschen? Bzw. wie mache ich das

Danke für Eure Hilfe
 
Kopieren mit Subquery:
Code:
INSERT INTO neue_tabelle (SELECT Spalte1, Spalte2 FROM alte_tabelle)
Dabei ist Spalte1 und Spalte2 der Spaltenname in der alten Tabelle und muss in der Reihenfolge aufgezählt werden, wie die Spalten in der neuen Tabelle definiert sind.

Gruß hpvw
 
Eigendlich Schade das die Id in der neuen Tabelle drin sind

wenn man Daten von einer Tabelle in eine andre einfügen möchte geht das schon mit
insert
aber jedes insert hängt eine neuen Datensatz an
id wert
1
2
wenn das das deine neute tabelle mit den ids ist und du machst ein insert
dann passiert sowas
1
2
3 wertausaltetabelle

die syntax ist
insert into neutabelle(id,wert) select alteid,alterwert from altetabelle

wenn nun deine id ein autoincremnt Feld ist dann so:

insert into neutabelle(wert) select alterwert from altetabelle
 
hallo alle

vielen herzlichen Dank für die Antworten!!

Ich werde mir das Ganze morgen in Ruhe anschauen und dann Eure Tipps befolgen.

einen schönen Abend wünsch ich :-)
 
hallo alle

also es hat geklappt! Was hab ich gemacht? Genau das, was hpw geschrieben hat. Und vorher hab ich die Tabelle, welche bereits die id's enthielt, zuerst geleert. Also so, wie melmager rät.

Es klappte gleich auf Anhieb - wunderbar!

Wo kann man zu 'Subqueries' mehr nachlesen? Am liebsten auf deutsch ;-)

Danke Euch allen :-)

webdev
 
Zurück