# [SQL] Update über zwei Tabellen



## Hedonismbot (20. Januar 2005)

Hallo! 

 Kann mir jemand helfen? Ich habe zwei Tabellen: 

 A) 
 Datum 
 Wert 
 Schnitt 

 B) 
 Datum 
 Schnitt 

 In Tabelle A sind zu jedem Datum mehrere Einträge mit entsprechenden Werten vorhanden. Ich wollte jetzt zu jedem Datum den Tagesschnitt ausrechnen, was ich in Tabelle B erledigt habe. 

 Die Tabellen sehen ungefähr so aus: 

 A) 
 Datum              Wert         Schnitt 
 14.01.2005        1,5 
 14.01.2005         4 
 14.01.2005         9 
 14.01.2005         2,5 
 15.01.2005         7 
 15.01.2005         4 

 B) 
 Datum               Schnitt 
 14.01.2005          4,25 
 15.01.2005          5,5 

 So, und nun möchte ich den ausgerechneten Schnitt in A eintragen. 

 Mein erster Versuch sieht ungefähr so aus: 

 UPDATE a 
 SET a.schnitt = b.schnitt 
 where a.datum = b.datum 

 Naja, das kann aber nicht hinhauen, wegen der Mehrdeutigkeit. Mir fehlt aber gerade die zündende Idee...


----------



## Nico Graichen (20. Januar 2005)

Ich versteh nicht ganz, warum du das in Tabelle A nochmal schreiben willst.
Du blähst damit doch nur deine DB auf und erhälst redundante Daten. Das ist nicht grad Sinn und zweck des Erfinders.


----------



## Hedonismbot (20. Januar 2005)

Tabelle B dient nur zur Berechnung. Das ist schon OK so. Redundanz kann auch manchmal gewollt sein...


----------



## Hedonismbot (20. Januar 2005)

Okay, hab's selber rausgepuzzlet. Falls es jemanden interessiert:

 UPDATE a
 INNER JOIN b ON a.datum = b.datum 
 SET a.schnitt = b.schnitt;


----------

