Mysql
 sql >> Database >  >> RDS >> Mysql

Accesso alla colonna dalla tabella di aggiornamento nella sottoquery in mysql

Prova invece questo:

update o
set latitude = (select avg(latitude)
                from location
                where location.creatorId=o.creatorId
                and location.timestamp<o.timestamp+interval 5 minute
                and location.timestamp>o.timestamp-interval 5 minute)
from occurrence o

Ricevevi l'errore "colonna sconosciuta 'occorrence.creatorId'" perché l'occorrenza della tabella non è accessibile alla tua sottoquery più interna. Di conseguenza, tutti i riferimenti alle colonne nella tabella delle occorrenze dalla sottoquery non sono validi. La query sopra dovrebbe funzionare bene.