Wie ist eine Unterabfrage, um mehrere Spaltenwerte in SQL zu aktualisieren?

Mein letztes Ziel ist es, mehrere Spaltenwerte von einer Tabelle zur anderen aktualisieren zu können, ohne jemanden zu schreiben.

Ich habe folgendes auf der Website von IBM gefunden, wie es angemerkt ist ( Link )

UPDATE items SET (stock_num, manu_code, quantity) = ( (SELECT stock_num, manu_code FROM stock WHERE description = 'baseball'), 2) WHERE item_num = 1 AND order_num = 1001; UPDATE table1 SET (col1, col2, col3) = ((SELECT MIN (ship_charge), MAX (ship_charge) FROM orders), '07/01/2007') WHERE col4 = 1001; 

Ich nahm das und versuchte, es an meinem Ende zu schaffen, aber ich bekomme immer eine "falsche Syntax in der Nähe" ('"Fehler.

 UPDATE XX__JeremyTempTable2 SET (OP__DOCID, SexualPrefCode) = (SELECT OP__DOCID, SexualPrefCode FROM FD__CLIENTS WHERE CLIENTKEY = 726148) 

Solutions Collecting From Web of "Wie ist eine Unterabfrage, um mehrere Spaltenwerte in SQL zu aktualisieren?"

Für MS Sql server wird Ihre Abfrage sein

 UPDATE XX__JeremyTempTable2 SET OP__DOCID = FD__CLIENTS.OP__DOCID, SexualPrefCode = FD__CLIENTS.SexualPrefCode FROM FD__CLIENTS WHERE FD__CLIENTS.CLIENTKEY = 726148 

Bei solchen Fehlern brauchst du das Handbuch zu lesen

Bearbeiten Geändert zu deiner Zielabfrage.

Sie müssen jede Variable separat setzen:

 UPDATE XX__JeremyTempTable2 SET OP__DOCID = (SELECT OP__DOCID FROM FD__CLIENTS WHERE CLIENTKEY = 726148) , SexualPrefCode = (SELECT SexualPrefCode FROM FD__CLIENTS WHERE CLIENTKEY = 726148)