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

Problemas para hacer un select

Estas en el tema de Problemas para hacer un select en el foro de SQL Server en Foros del Web. necesito filtrar los valores negativos dentro de una instrucción SELECT es por ejemplo tengo lo siguiente: SELECT VENDEDORES.COD_VENDEDOR, NOMBRE_VENDEDOR, COD_PRODUCTO, DESCRIPCION, (SUM( SUBTOTAL )), (SUM( ...
  #1 (permalink)  
Antiguo 14/05/2009, 16:24
 
Fecha de Ingreso: junio-2008
Mensajes: 109
Antigüedad: 15 años, 11 meses
Puntos: 0
Exclamación Problemas para hacer un select

necesito filtrar los valores negativos dentro de una instrucción SELECT es por ejemplo tengo lo siguiente:
SELECT
VENDEDORES.COD_VENDEDOR,
NOMBRE_VENDEDOR,
COD_PRODUCTO,
DESCRIPCION,
(SUM( SUBTOTAL )),

(SUM( SUBTOTAL_COSTO)),
(SUM (MARGEN_TOTAL_LINEA)),
V_FC_MARGEN_DET.CODIGO_MONEDA,
PCT_DESC_AUMENTO

FROM
SYSADM.VENDEDORES VENDEDORES,
SYSADM.V_FC_MARGEN_DET V_FC_MARGEN_DET

WHERE
V_FC_MARGEN_DET.NUM_EMPRESA = 1
AND V_FC_MARGEN_DET.NUM_EMPRESA *= VENDEDORES.NUM_EMPRESA
AND V_FC_MARGEN_DET.COD_VENDEDOR *= VENDEDORES.COD_VENDEDOR
AND V_FC_MARGEN_DET.FECHA_DOCUMENTO >= '2009-05-02' AND V_FC_MARGEN_DET.FECHA_DOCUMENTO <= '009-05-09'
GROUP BY VENDEDORES.COD_VENDEDOR, NOMBRE_VENDEDOR, COD_PRODUCTO,
DESCRIPCION, V_FC_MARGEN_DET.CODIGO_MONEDA, PCT_DESC_AUMENTO

ORDER BY
VENDEDORES.COD_VENDEDOR ASC

y en (SUM (MARGEN_TOTAL_LINEA)) se devuelven valores negativos y quiero filtrarlos para que no se muestren o se devuelva cero. intente usar if - else pero me devuelve error.
  #2 (permalink)  
Antiguo 14/05/2009, 16:26
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 9 meses
Puntos: 39
Respuesta: Problemas para hacer un select

Despues de GROUP BY puedes aumentar HAVING SUM (MARGEN_TOTAL_LINEA)>0
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #3 (permalink)  
Antiguo 15/05/2009, 11:18
 
Fecha de Ingreso: junio-2008
Mensajes: 109
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Problemas para hacer un select

Gracias por tu sugerencia lo que sucede es que halcer el HAVING SUM (MARGEN_TOTAL_LINEA) me filtra los valores que son negativos en ese campo y no aparecen en la consulta y lo que quiero es que cuando los valores de campo MARGEN_TOTAL_LINEA sean negativos se muestre un valor de cero (0) pero que se muestren todos los registros o sea que no sean filtrados.
  #4 (permalink)  
Antiguo 15/05/2009, 14:25
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 9 meses
Puntos: 39
Respuesta: Problemas para hacer un select

Entonces pon:
Código SQL:
Ver original
  1. CASE WHEN MARGEN_TOTAL_LINEA>0 THEN MARGEN_TOTAL_LINEA ELSE 0 END
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
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 00:25.