Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Consulta SQL con SUM (https://www.clubdelphi.com/foros/showthread.php?t=52315)

mateamargo 17-01-2008 03:38:58

Consulta SQL con SUM
 
:confused:
Hola,
Tengo las tablas:
Articulos:
Artcod
Nombre

Saldos
Artcod
LugCod
Saldo

Ejemplo de datos:
Articulos:
artcod nombre
1 articulo nro 1
2 articulo nro 2



Saldos
artcod lugcod cantidad
1 1 10
1 2 30
2 3 50
2 4 80


Necesitaria un archivo de salida del tipo:

artcod nombre Saldo
1 articulo nro 1 40
2 articulo nro 2 130


Código:

En Foxpro:
Funciona ok

SELECT ARTICULO.ARTCOD,ARTICULO.NOMBRE,SUM(SALDOS.CANTIDAD) AS SALDO FROM ARTICULO LEFT OUTER JOIN SALDOS ON (SALDOS.ARTCOD=ARTICULO.ARTCOD) GROUP BY ARTICULO.ARTCOD
WHERE ARTICULO.ARTCOD >= 1 AND ARTICULO.ARTCOD <= 2

Código:

En Teoria y en otros lenguajes que he probajo ejemplo delphi:
Funciona ok

SELECT ARTICULO.ARTCOD,ARTICULO.NOMBRE,SUM(SALDOS.CANTIDAD) AS SALDO FROM ARTICULO LEFT OUTER JOIN SALDOS ON (SALDOS.ARTCOD=ARTICULO.ARTCOD) GROUP BY ARTICULO.ARTCOD,ARTICULO.NOMBRE
WHERE ARTICULO.ARTCOD >= 1 AND ARTICULO.ARTCOD <= 2

La Consulta es porque en fox no necesito agrupar por articulo.nombre ????
Hay una mejor forma de obtener el archivo de salida que quiero ??
Desde ya muchas gracias por vuestro tiempo..
Saludos

mateamargo 17-01-2008 07:49:52

Solución al al tema
 
Segui buscando en el foro y encontre la solucion gracias a
jachguate en una consulta group by:
Desde ya muchas gracias a todos.
Código:

select m1.artcod, m1.artnom, q1.saldo
  from articulo m1
      inner join (
        select m2.artcod, sum(m2.artstock) saldo
          from sldstk m2
          group by m2.artcod
      ) q1
      on m1.artcod = q1.artcod

Saludos


La franja horaria es GMT +2. Ahora son las 17:40:39.

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