Ver Mensaje Individual
  #8 (permalink)  
Antiguo 28/12/2015, 09:40
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Obtener resultados no relacionados

Cita:
Pues no es necesario el uso de Left Join en este caso.


¿En serio?

Código SQL:
Ver original
  1. SELECT c.*
  2. FROM coche c LEFT JOIN motor m ON  M.idcoche = C.idcoche
  3. WHERE m.idcoche IS NULL

Esto es mucho más performante que lo que planteaste. Esencialmente es un ejemplo de manual, no estoy inventando nada. DE hecho, siendo que se está operando sobre FK, el LEFT JOIN muy probablemente no lea la tabla de MOTOR, sino solamente el indice FK. En tu ejemplo es altamente probable que lea ambas tablas, y dependiendo del DBMS, ese WHERE puede ser muy antiperformante.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 29/12/2015 a las 09:11