Heim > Fragen und Antworten > Hauptteil
UPDATE a,b SET a.v_publishyear = b.v_publishyear WHERE a.v_id = b.v_e
Ich möchte die Daten in Tabelle A aktualisieren. Eigentlich sollten es mehr als 9.000 Daten sein, aber tatsächlich können nur 120 Daten aktualisiert werden. Wie läuft das?
Aktualisieren Sie das Feld „publishyear“ in Tabelle b auf das entsprechende Feld „publishyear“ in Tabelle a.
Aber wenn ich operiere
SELECT * FROM a table, b table where a table.c field = b table.d field
Während dieser Abfrage können mehr als 9.000 Daten abgefragt werden.
Was ist in meinem Aktualisierungsdatencode los? ? Wolltuch?
怪我咯2017-05-27 17:41:06
UPDATE不太适合用WHERE去关联两表。所以试试这种写法:
UPDATE a LEFT JOIN b ON a.v_id = b.v_e SET a.v_publishyear = b.v_publishyear
伊谢尔伦2017-05-27 17:41:06
update tableA a
set a.v_publishyeaar=(select b.v_publishyear from tableB b where b.v_e=a.v_id)