sql >> Base de Datos >  >> RDS >> Mysql

HQL está generando una 'unión cruzada' incompleta al ejecutar Actualizar

La documentación de Hibernate dice:

lt.trade.volume es una combinación interna implícita entre LocationTrade y Trade, por lo que la consulta no es válida. Tendrás que reescribirlo a algo como lo siguiente:

update LocationTrade lt set lt.hasVeryHighVolume=true where lt.locationIndices=? 
and lt.id in (
    select lt2.id from LocationTrade lt2 where lt2.trade.volume > 20000)

O tendrá que usar una consulta SQL en su lugar.