Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/08/2007, 04:20
otepsaves
 
Fecha de Ingreso: febrero-2007
Mensajes: 5
Antigüedad: 17 años, 2 meses
Puntos: 0
Subconsulta bloquea base de datos

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.