Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/07/2012, 22:21
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 11 años, 11 meses
Puntos: 320
Respuesta: consulta relacionada con posibles registros inexistentes

Cita:
(por cierto, el tema de los NULL abarca un capítulo entero en el manual de referencia, deberías leerlo).
creo que me saltie esa parte pero seguire tu consejo y en breve lo leere, no puedo creer que sea tan ignorante en este tema
Cita:
En el WHERE no puedes comparar valores contra los campos de la tabla derecha, sino contra la izquierda, para el caso de valores del campo usado como relación.
es por eso que no me resultaba entonces, estaba haciendo justamente eso, por lo tanto no me funcionaba.

Busque en base a lo que me dijiste y ENCONTRE UNA SOLUCION!!!! LO LOGRE JEJE!!!!

no es esactamente lo que buscaba pero funciona y me trae los resultados que espero esta es la consulta:
Código MySQL:
Ver original
  1. SELECT P.ID , P.Nombre , (SELECT V.Cantidad FROM ventas V WHERE P.ID=V.ID AND V.IDPedido='2') Cantidad
  2. FROM pedidos P

usando select anidados en lugar de los join pude y obtengo un dichoso NULL en aquellos productos que en un determinado pedido no se usaron y por lo tanto no hay registros.

o mejor aun
Código MySQL:
Ver original
  1. SELECT P.ID , P.Nombre , IFNULL((SELECT V.Cantidad FROM ventas V WHERE P.ID=V.ID AND V.IDPedido='2'),0) Cantidad
  2. FROM pedidos P
me muestra un '0' si no existe el registro

nose si se podra optimizar esa consulta o asi queda tu que opinas?

por cierto gracias por tu tiempo y las explicaciones son muy claras, mañana leere el capitulo sobre estados NULL y algun otro sobre el lenguaje asi me desasno de algunas cosas XD

Última edición por NSD; 09/07/2012 a las 22:29