Oppdatere en tabell med data fra en annen tabell med Lokal SQL

UPDATE punktum Lokal SQL (SQL brukes av BDE) støtter ikke BLI ... så hvordan oppdaterer du en tabell med data fra et annet bord?
Her er Slik gjør du:
+ ------------- + + ------------- +
| Orders.db | | Customer.db | Bedrifter + ------------- + + ------------- +
| CustNo | < < --------- > | CustNo | Bedrifter | ShipToAddr1 | | ADDR1 | Bedrifter | ShipToAddr2 | | ADDR2 | Bedrifter + ------------- + + ------------- +
Forutsatt at vi ønsket å oppdatere feltene ShipToAddr1 og ShipToAddr2 av den Orders.db tabell med verdiene for feltene ADDR1 og ADDR2 henholdsvis fra tabellen Customer.db, for de registreringer av bestillinger som har begge feltene blank, og bli med i tabellene ved felt CustNo stede i begge tabeller, kanskje vi ville være fristet til å skrive:
UPDATE Orders INNER JOIN Kundeanmeldelser PÅ Customer.CustNo = Orders.CustNo
SET ShipToAddr1 = ADDR1, ShipToAddr2 = ADDR2
HVOR ShipToAddr1 = "" OG ShipToAddr2 = "" Men i Lokal SQL (den som brukes av BDE), tiltrer ikke støttes i SQL UPDATE statement, og vi må bruke subqueries å oppnå forventet resultat:
UPDATE Orders
SET ShipToAddr1 = (SELECT ADDR1 fra kunde WHERE
Customer.CustNo = Orders.CustNo), etter ShipToAddr2 = (SELECT ADDR2 FROM kunde WHERE
Customer.CustNo = Orders.CustNo)
HVOR ShipToAddr1 = "" OG ShipToAddr2 = "" Anmeldelser I "SQL UPDATE statement" tema for den lokale guide SQL finner du et eksempel på en en-til-mange-relasjon som bruker gruppering subqueries.



Previous:
Next Page: