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

subconsulta sql

Estas en el tema de subconsulta sql en el foro de Bases de Datos General en Foros del Web. Hola, estoy intentando hacer una subconsulta pero no veo como hacerlo. Os pongo a continuación las tablas que tengo. TABLA ARTICULOS (ar) ------------------------ Codigo Descripción ...
  #1 (permalink)  
Antiguo 06/03/2012, 02:55
 
Fecha de Ingreso: noviembre-2007
Mensajes: 97
Antigüedad: 16 años, 5 meses
Puntos: 0
Pregunta subconsulta sql

Hola,

estoy intentando hacer una subconsulta pero no veo como hacerlo. Os pongo a continuación las tablas que tengo.


TABLA ARTICULOS (ar)
------------------------
Codigo Descripción
1 pollo 1kg
5 lomo adobado
24 alitas de pollo


TABLA CONSUMOS (c)
----------------------------
Codigo Cliente Venta Almacen
1 5 15,48 5
24 5 2,97 5
24 6 11,67 6


TABLA MOVIMIENTOS (m) (TipoMov 3 = entrada, 4=salida)
-----------------------------
Codigo Almacen TipoMov Cantidad
1 5 3 25
1 6 4 25
5 5 4 12
24 5 3 8,5


Necesito sacar como resultado las siguientes columnas de un almacen:

Codigo del Articulo, Descripción, Ventas del articulo, Entradas, Salidas.


Tengo hecha la consulta principal con las ventas, que es la siguiente:
Código:
SELECT c.codigo, ar.descripcion, sum(c.ventas)
FROM DBA.consumos AS c
JOIN DBA.articulos AS ar On c.codigo = ar.codigo
WHERE c.almacen=5 
GROUP BY c.articulo, ar.descripcion
ORDER BY c.articulo ASC

Me falta que me muestre 2 parámetros más: Entradas y Salidas. Que una es cuando TipoMov=3 y la otra TipoMov=4. Si lo pongo en el WHERE solo se hacer que me muestre uno d los 2 casos, pero no las 2 columnas.

Podeis ayudarme por favor?


Muchas Gracias!!
  #2 (permalink)  
Antiguo 06/03/2012, 07:26
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: subconsulta sql

SUM(IF(TipoMov=3,Cantidad,0)) as Entradas, SUM(IF(TipoMov=4,Cantidad,0)) as Salidas

No?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: sql
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 10:34.