2017-02-17 3 views
2

existiert Ich suche nach etwas ähnlich-MYSQL Großeinsatz liegt vor, wenn nicht aktualisieren, wenn

insert into table1(a, b, c) 
select col1 as d, col2 as e, col3 as f from table2 
on duplicate key update b = e, c = f; 

HINWEIS - Hier table1.a eindeutiger Schlüssel ist.

Ich bekomme Fehler- Unbekannter Spaltenname 'e'.

Gibt es eine Lösung für die Verwendung 'auf doppelten Schlüssel' mit 'In Select einfügen' Anweisung?

Danke!

Antwort

2

Verwirrung durch die Verwendung von Alias ​​verursacht

insert into table1(a, b, c) 
select col1 as d, col2 as e, col3 as f from table2 
on duplicate key update b = table2.col2, c = table2.col3; 
+0

gleichen Fehler .... Unbekannt Spaltenname ‚e‘ – Abhi

+0

Ja, ich habe beide versucht, ... Seine nicht funktioniert. Und ich möchte Tabelle 2 Daten in Tabelle1 aktualisieren, so dass Wert (a) und Wert (b) nicht funktionieren. – Abhi

+0

Ja..ich habe das auch versucht ... funktioniert nicht. Es zeigt denselben Fehler – Abhi

Verwandte Themen