Archiv verlassen und diese Seite im Standarddesign anzeigen : insert und select in einer query
Hallo Leute,
habe ein kleines Problem was ich nicht gelößt bekomme.
Ich möchte in eine Tabelle einen Datensatz einfügen,
den ich aus einer anderen Tabelle ermittle.
INSERT tabelle1 (spalte1, spalte2)
VALUES("blup", SELECT sum(ostereier) FROM tabelle2)
Das geht leider nicht und alles andere was ich probierte
ging auch nicht.
Würde mich sehr über einen Tip freuen,
netten Gruß, hOk
subselects kommen erst in der Version 4.
in deinem Fall musst du alle Aktionen einzeln ausführen. Also erst das select und dann insert.
Ahh, vielen vielen Dank,
da hätte ich ja noch lange probieren können.
netten Gruß und eine schönes Wochenende, hOk
Troublegum 31-05-2002, 22:35 Das geht schon @Berni:
INSERT INTO tabelle 1 (feld1,feld2,feld3) SELECT feld1,feld2,feld3 FROM tabelle2
Interessant, den hatte ich auch probiert, doch
ich hab es nicht hinbekommen nur einen Wert
für den insert aus der anderen Tabelle zu fischen?
Troublegum 31-05-2002, 22:51 Sollte eigentlich klappen: siehe hier (http://www.mysql.de/documentation/mysql/bychapter/manual.de_Reference.html#INSERT_SELECT)
Mmh, es scheint nicht zu gehen,
diese Query erscheint mir wie eine
Zeilenkopie, welche nur bei gleicher
Spaltenanzahl funktioniert.
netten Gruß, hOk
Troublegum 01-06-2002, 12:08 Nö. Leidiglich die Anzahl der Ergebnisse des SELECT Ausdrucks muss mit der Anzahl der Spalten in der Spaltenliste im INSERT Ausdruck übereinstimmen. Und natürlich der Typ.
Ich habe nur gleiche Feldnamen gewählt in dem Beispiel. Schau doch mal hier (http://www.mysql.de/documentation/mysql/bychapter/manual.de_Reference.html#INSERT_SELECT). Da ist alles genau erklärt.
Klar hatte ich schon gelesen,
genau das ist ja so schade,
denn ich würde halt gerne nur
ein Feld aus dem Select holen,
und den rest so eintragen, wie
oben in meinem Beispiel.
netten Gruß, hOk
Troublegum 01-06-2002, 12:31 Ja, das geht ja auch:
INSERT INTO tabelle1 (feld1,feld2) SELECT "Hallo",nochwas FROM tabelle2
Genial,
vielen, vielen Dank
schöne Grüße, hOk
|
|