PDA

View Full Version : sql update mit 2 verknüpften dateien



juniorprog
01-02-06, 14:07
hat jemand ein beispiel wo mit update felder in datei 1 über set verändert werden, unter der bedingung dass felder in datei 1 bestimmte werte haben und auch felder in datei 2 bestimmte werte haben müssen. ich such mir hier einen ab

Fuerchau
01-02-06, 15:14
Prinzipell:

update myfile set myfield = (select field1 from file2 where myfile.key=file2.key)
where myfile.key in (select file2.key from file2 where condition)

oder

update myfile set (myfield, myfield2, ...) = (select field1, field2, ... from file2 where myfile.key=file2.key)
where myfile.key in (select file2.key from file2 where condition)


wobei
eine 1:1-Beziehung im 1. Subselect vorhanden sein muss oder NULL-Werte erlaubt sein müssen.

juniorprog
03-02-06, 11:10
Glaub ich habe mich schlecht ausgedrückt.
ich habe eine Artikeldatei wo zum artikelschlüssel und weiteren feldern ein feld bezeichung steht. diese bezeichnung ist in der 2. datei abgelegt und hier sollen die bezeichnungen gefiltert werden die eine bestimmten text im value haben.

Tabelle Artikel: artikelnr bezeichnungsschlüssel status
Tabelle Bezeichnung: bezeichnunssschlüssel bezeichnung

Alle Artikel sollen einen bestimmten status erhalten, wenn bezeichnung einen entsprechenden wert hat.

Fuerchau
03-02-06, 11:17
Schau dir obige Syntax doch an:

update file set field='Status'
where key in (select key from file2 where fieldx='Bedingung')