none
error Cannot perform an aggregate function on an expression containing an aggregate or a subquery. RRS feed

  • Pregunta

  • hola compañeros estoy haciendo una consulta a la bd y me aparece este error

    select CP.clave_prod, CP.descripcion
    ,sum(inv.cantidad_entrada - inv.cantidad_salida) Ex_Hoy

    ,sum(Case When fecha_movto between  '2000-01-22 00:00:53.000' and '2017-08-31 00:00:53.000' Then sum(inv.cantidad_entrada - inv.cantidad_salida) ELSE 0 End) AGO

    from CAT_PRODUCTOS CP --660

    left JOIN       inventario       inv ON inv.cia=1 and inv.sucursal=0 and inv.almacen=1 and inv.clave_prod=cp.clave_prod
    LEFT OUTER JOIN cat_num_corridas cnc ON cp.numero_corrida = cnc.clave_corrida AND cp.tamano = cnc.clave_size AND cp.cia = cnc.cia

    WHERE cp.marca=1004 and (CP.DESCRIPCION LIKE '%'+'camisa'+'%' or CP.DESCRIPCION LIKE '%'+'blusa'+'%') and cp.obsoleto = 0 and cp.cia=1

    group by CP.clave_prod, CP.descripcion,cp.marca, cp.numero_corrida,cp.clave_tipo_prenda, cp.clave_color,cnc.orden--,fecha_movto

    ORDER BY cp.marca, cp.numero_corrida,cp.clave_tipo_prenda, cp.clave_color,cnc.orden

    que puedo hacer

    sábado, 11 de noviembre de 2017 2:30

Respuestas

  • SELECT 
        cp.clave_prod, cp.descripcion, SUM(inv.cantidad_entrada - inv.cantidad_salida) Ex_Hoy,
        SUM(CASE
    	   WHEN fecha_movto BETWEEN '2000-01-22 00:00:53.000' AND '2017-08-31 00:00:53.000' THEN 
    		  inv.cantidad_entrada - inv.cantidad_salida        
        END) AGO
    FROM 

    sábado, 11 de noviembre de 2017 3:09

Todas las respuestas

  • Saludos:

    El error esta en:

    select CP.clave_prod, CP.descripcion
    ,sum(inv.cantidad_entrada - inv.cantidad_salida) Ex_Hoy
    
    ,sum(Case When fecha_movto between  '2000-01-22 00:00:53.000' and '2017-08-31 00:00:53.000' Then sum(inv.cantidad_entrada - inv.cantidad_salida) ELSE 0 End) AGO

    No puedes sumar basado en una condicional que esta sumando a su vez.

    Espero ayude.

    JOSE LUIS


    Dios NO los llamo LAS DIEZ RECOMENDACIONES

    • Propuesto como respuesta Jose Luis Vargas sábado, 11 de noviembre de 2017 2:58
    sábado, 11 de noviembre de 2017 2:57
  • SELECT 
        cp.clave_prod, cp.descripcion, SUM(inv.cantidad_entrada - inv.cantidad_salida) Ex_Hoy,
        SUM(CASE
    	   WHEN fecha_movto BETWEEN '2000-01-22 00:00:53.000' AND '2017-08-31 00:00:53.000' THEN 
    		  inv.cantidad_entrada - inv.cantidad_salida        
        END) AGO
    FROM 

    sábado, 11 de noviembre de 2017 3:09