Originariamente inviato da pape86
Ciao!
avrei bisogno di un aiuto per una query che non riesco a definire.
Allora, ho una tabella con alcuni campi già popolati e gli altri settati a null, e devo aggiornare questi ultimi con i valori presi da un'altra tabella.
Le due tabelle non hanno lo stesso numero di colonne, ma hanno in comune i campi che devo aggiornare (stesso tipo e nome).
Allora, ho pensato di fare un join tra le due tabelle, ma poi non so come usare il risultato del join per aggiornare la prima tabella.

Per essere chiaro vi posto le due tabelle.
Tabella principale (completamente popolata) da cui devo estrarre i dati:
http://img687.imageshack.us/img687/3411/tab1n.jpg

Tabella secondaria, (primi 4 campi popolati, gli altri 2 settati a null):
http://img717.imageshack.us/img717/444/tab2.jpg

Adesso a me interessa aggiornare i campi fanta_voto e voto della seconda tabella (giornatax, in cui ci sono un gruppo di giocatori), con quelli della prima tabella (voti_giornatax, in cui ci sono tutti i giocatori della serie A).
Quindi, la query dovrebbe fare questo:
aggiornare la tabella giornatax e settare giornatax.fanta_voto=voti_giornatax.fanta_voto e giornatax._voto=voti_giornatax._voto dove giornatax.giocatore=voti_giornatax.giocatore

grazie per qualsiasi tipo di aiuto e suggerimento!
Credo ti basti una semplice query

codice:
update giornatax as gx,voti_giornatax as vgx
set gx.fanta_voto = vgx.fanta_voto,
    gx.voto = vgx.voto
where gx.giocatore = vgx.giocatore
Per precauzione testala su una copia di backup della tabella.

Fai attenzione che se definisci un campo come decimal (2,1) , il valore massimo consentito sarà 9.9 e non potrai assegnare quindi un ipotetico 10 a un giocatore.