Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 06-06-2021
abelg abelg is offline
Miembro
 
Registrado: jul 2004
Posts: 50
Poder: 20
abelg Va por buen camino
Por si aun estas con la duda

Te mando un ejemplo pequeño como podrías plantear la solución.
Código SQL [-]
CREATE TABLE #Ventas
(
  Cod_Sup Varchar(25) not null,
  Cod_Esc Varchar(25) not null,
  Cod_Fam int not null,
  Cod_producto int,
  Cantidad int,
)

CREATE TABLE #Producto
(
  Cod_Preoducto int identity not null,
  Nombre varchar(25) not null,
  Pes_vol money not null
)

INSERT #Producto Values ('xxx', 2360.25)
INSERT #Producto Values ('yyy', 360.25)
INSERT #Producto Values ('zzz', 1560.25)
INSERT #Producto Values ('aaa', 4260.25)

INSERT #Ventas Values('1', '10111', 1, 1, 3)
INSERT #Ventas Values('1', '10111', 1, 1, 5)
INSERT #Ventas Values('1', '10111', 1, 1, 3)

INSERT #Ventas Values('1', '10111', 2, 3, 3)

INSERT #Ventas Values('1', '10111', 3, 1, 5)
INSERT #Ventas Values('1', '10111', 3, 3, 4)
INSERT #Ventas Values('1', '10111', 3, 2, 3)

INSERT #Ventas Values('1', '10111', 4, 3, 5)
INSERT #Ventas Values('1', '10111', 5, 2, 4)
INSERT #Ventas Values('1', '10111', 6, 1, 2)
INSERT #Ventas Values('1', '10111', 7, 1, 2)
INSERT #Ventas Values('1', '10111', 8, 2, 18)
INSERT #Ventas Values('1', '10111', 9, 3, 1)
INSERT #Ventas Values('1', '10111', 10, 2, 13)
INSERT #Ventas Values('1', '10111', 11, 2, 15)
INSERT #Ventas Values('1', '10111', 12, 1, 11)
INSERT #Ventas Values('1', '10111', 13, 3, 12)
INSERT #Ventas Values('1', '10111', 14, 1, 17)
INSERT #Ventas Values('1', '10111', 15, 3, 14)
INSERT #Ventas Values('1', '10111', 16, 1, 12)

SELECT Cod_Esc,
  Cod_Sup,
  Cod_Fam,
  Total
FROM  (SELECT Cod_Esc,
      Cod_Sup,
      Cod_Fam,
      SUM(v.Cantidad * p.Pes_vol) Total,
      (SELECT
        SUM(v1.Cantidad * p1.Pes_vol) TotalT
      FROM #Ventas v1
        INNER JOIN #Producto p1 ON p1.Cod_Preoducto = v1.Cod_producto
      WHERE v1.Cod_Fam <= v.cod_Fam
      GROUP BY v1.Cod_Esc, v1.Cod_Sup
      ) GranTotal 
    FROM #Ventas v
    INNER JOIN #Producto p ON p.Cod_Preoducto = v.Cod_producto
    GROUP BY Cod_Esc, Cod_Sup, Cod_Fam
    ) x
WHERE x.GranTotal <= 75000
ORDER BY Cod_Esc, Cod_Sup, Cod_Fam


DROP TABLE #Producto
DROP TABLE #Ventas

Saludos.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Si Factura Cancelada Total Igual A 0 JXJ Firebird e Interbase 4 27-08-2012 23:22:25
Mostrar valor X y Y en punto dónde clico en chart vivamotos C++ Builder 2 15-12-2011 15:59:48
Numero Mayor igual , Menor igual... Problema ZiriusB OOP 12 27-06-2011 17:31:24
Eliminar de un Select registros con valor de un campo igual danilo_candales SQL 3 15-01-2008 15:32:55
Donde se almacena el valor MAX ilichhernandez SQL 5 16-08-2007 23:18:05


La franja horaria es GMT +2. Ahora son las 15:59:50.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi