Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] Group by con valores nulos

Estas en el tema de Group by con valores nulos en el foro de Bases de Datos General en Foros del Web. Hola buenos tardes @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código SQL: Ver original SELECT s . producto , s . entrada AS entrada , r . salida AS salida ...
  #1 (permalink)  
Antiguo 23/08/2016, 12:32
 
Fecha de Ingreso: diciembre-2015
Mensajes: 21
Antigüedad: 8 años, 3 meses
Puntos: 0
Mensaje Group by con valores nulos

Hola buenos tardes

Código SQL:
Ver original
  1. SELECT s.producto,s.entrada AS entrada,r.salida AS salida,s.mes,s.anio AS anio,s.entrada-r.salida AS total
  2. FROM (SELECT MONTH ( fecha ) AS mes,YEAR(fecha) AS anio, producto,COALESCE(SUM(cantidad),0) AS entrada FROM eProductoTerminado
  3. WHERE ingresosalida='Ingreso' AND fecha BETWEEN '2015-01-01' AND '2017-12-31' GROUP BY producto,anio ORDER BY producto) AS s
  4.  LEFT JOIN (SELECT MONTH ( fecha ) AS mes,YEAR(fecha) AS anio,producto,COALESCE(SUM(cantidad),0) AS salida FROM eProductoTerminado
  5. WHERE ingresosalida='Salida' AND fecha BETWEEN '2015-01-01' AND '2017-12-31'  GROUP BY producto,anio ORDER BY producto) AS r ON
  6. s.producto=r.producto AND s.mes=r.mes AND s.anio=r.anio
[/B]
tengo esta sentencia SQL, el problema de esta sentencia es que en el WHERE ingresosalida='Salida' en el campo de cantidad tengo un valor NULL y tengo otro valor que si tiene valor, pero al agrupar el valor+null (ojo no es una suma, es un GROUP BY) en el resultado me lo toma como el NULL y no como el valor , ya busque como hacerlo pero solo sale en el caso de cuando se hace un SUM.

Agradeceria su ayuda

Última edición por gnzsoloyo; 24/08/2016 a las 08:31
  #2 (permalink)  
Antiguo 23/08/2016, 14:09
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Group by con valores nulos

Claro que saldra el valor NULL, ya que NULL es un valor en la base de datos por lo que si agrupas por un campo que tiene NULL ten por seguro que el NULL sera uno de los elementos de la agraupacion, ahora que manejador de bases de datos estas usando? creo que sql server por el coalesce, ahora porque no pones esa cantidad para que si sea NULL la convierta a algun valor?
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 23/08/2016, 16:48
 
Fecha de Ingreso: diciembre-2015
Mensajes: 21
Antigüedad: 8 años, 3 meses
Puntos: 0
Respuesta: Group by con valores nulos

Cita:
Iniciado por Libras Ver Mensaje
Claro que saldra el valor NULL, ya que NULL es un valor en la base de datos por lo que si agrupas por un campo que tiene NULL ten por seguro que el NULL sera uno de los elementos de la agraupacion, ahora que manejador de bases de datos estas usando? creo que sql server por el coalesce, ahora porque no pones esa cantidad para que si sea NULL la convierta a algun valor?
hola gracias por tu respuesta.

estoy utilizando el gestor de phpmyadmin, y coalesce ya lo utilize y cambie el null por 0 pero en resultado en ves de salirme el resultado me sale el 0 sin la otra cantidad sumada, no se si lo estoy utilizando mal

Saludos.
  #4 (permalink)  
Antiguo 24/08/2016, 07:45
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Group by con valores nulos

cual es tu gestor de bases de datos phpmyadmin no es un gestor
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 24/08/2016, 08:37
 
Fecha de Ingreso: diciembre-2015
Mensajes: 21
Antigüedad: 8 años, 3 meses
Puntos: 0
Respuesta: Group by con valores nulos

Cita:
Iniciado por Libras Ver Mensaje
cual es tu gestor de bases de datos phpmyadmin no es un gestor
Hola

Perdon, es MYSQL

espero me puedas ayudar.

Etiquetas: sentencia, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:41.