Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Bases de Datos General (http://www.forosdelweb.com/f21/)
-   -   Compute SQL Server 2000 (http://www.forosdelweb.com/f21/compute-sql-server-2000-a-316629/)

Michaelsoft 14/07/2005 08:29

Compute SQL Server 2000
 
tengo un problema al hacer esto:
Año Cod_prod Utilidad
1996 p0001 1577
1996 p0002 1488
1996 p0003 2431
1996 p0005 954
1996 NULL 6450
1997 p0001 2153
1997 p0002 824
1997 p0004 1422
1997 NULL 4399

debo hacerlo con 1 COMPUTE pero debo estar errado en algo :neurotico

select year(fecha) Año,cod_prod,
((precio - precio_cos)* cant) utilidad
from facturas f, detalle d
where f.num_fact = d.num_fact
order by 1
compute sum((d.precio - d.precio_cos)* cant) by year(fecha)

Mithrandir 14/07/2005 15:10

No estoy seguro de lo que quieres hacer, pero si lo que quieres es una fila con los resultados totales no te sirve la clausula WITH ROLLUP?
Código:

SELECT CASE WHEN (GROUPING(Item) = 1) THEN 'ALL'
            ELSE ISNULL(Item, 'UNKNOWN')
      END AS Item,
      CASE WHEN (GROUPING(Color) = 1) THEN 'ALL'
            ELSE ISNULL(Color, 'UNKNOWN')
      END AS Color,
      SUM(Quantity) AS QtySum
FROM Inventory
GROUP BY Item, Color WITH ROLLUP



La zona horaria es GMT -6. Ahora son las 06:48.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.