Hola a todos. Estoy teniendo un problema con una subconsulta que me bloquea la base de datos durante varios minutos.
Tengo dos tablas: usuarios y vehículos, donde la clave de usuarios es clave ajena en vehículos. Es decir un usuario puede tener varios vehículos y un vehículo sólo pertenece a un usuario.
si hago una consulta del tipo:
select * from vehiculos where id_usuario IN (
SELECT id_usuario FROM usuarios
WHERE ... )
funciona correctamente, pero si hago la consulta a la inversa:
select * from usuarios where id_usuario IN (
SELECT id_usuario FROM vehiculos
WHERE .... )
La consulta se queda varios minutos bloqueada y finalmente no llega a realizarse, ni me muestra ningún error. Además, la base de datos se queda bloqueada durante otros rato. ¿a qué puede ser debido? Las tablas son bastante grandes, hay unos 5000 usuarios y 8000 vehículos.
gracias, un saludo.