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

Resultado en una consulta con diferentes condiciones

Estas en el tema de Resultado en una consulta con diferentes condiciones en el foro de SQL Server en Foros del Web. Que tal que este bien. Nuevamente por acá buscando ayuda.. De que forma puedo realizar una consulta que me muestre los campos con distintas condiciones, ...
  #1 (permalink)  
Antiguo 15/12/2009, 17:58
Avatar de brygom  
Fecha de Ingreso: marzo-2008
Mensajes: 79
Antigüedad: 16 años, 1 mes
Puntos: 0
Resultado en una consulta con diferentes condiciones

Que tal que este bien. Nuevamente por acá buscando ayuda..

De que forma puedo realizar una consulta que me muestre los campos con distintas condiciones, yo tengo las consultas separadas pero necesito que estén juntos los campos para realizar un reporte.

Las consultas son estas:

Código PHP:
Select ventas_det.precioventas_det.cantidad as Venta_Efectivoventas_enc.Fecha  
from ventas_det
ventas_enc   where ventas_det.id_ventas in 
    
(select ventas_enc.id_ventas from ventas_enc where ventas_enc.id_almacenes 
    
and ventas_enc.Fecha between '2009-12-01' and '2009-12-03'
and 
ventas_det.tipo_pago 'Efectivo' and ventas_enc.id_ventas ventas_det.id_ventas 
Código PHP:
Select ventas_det.precioventas_det.cantidad as Venta_Chequeventas_enc.Fecha  
from ventas_det
ventas_enc   where ventas_det.id_ventas in 
    
(select ventas_enc.id_ventas from ventas_enc where ventas_enc.id_almacenes 
    
and ventas_enc.Fecha between '2009-12-01' and '2009-12-03'
and 
ventas_det.tipo_pago 'Cheque' and ventas_enc.id_ventas ventas_det.id_ventas 
Código PHP:
Select ventas_det.precioventas_det.cantidad as Venta_Creditoventas_enc.Fecha  
from ventas_det
ventas_enc   where ventas_det.id_ventas in 
    
(select ventas_enc.id_ventas from ventas_enc where ventas_enc.id_almacenes 
    
and ventas_enc.Fecha between '2009-12-01' and '2009-12-03'
and 
ventas_det.tipo_pago 'Credito' and ventas_enc.id_ventas ventas_det.id_ventas 
Lo único que varia es el tipo de pago, lo que necesito es que me las muestre de esta forma:


Fecha ------------- Venta_Efectivo--------- Venta_Cheque --------- Venta_Credito
xx-xx-xxxx ----------- 123 ---------------- ------ 342-------------------234


Espero me puedan ayudar con esto.

Saludos!
  #2 (permalink)  
Antiguo 16/12/2009, 11:01
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Resultado en una consulta con diferentes condiciones

Utiliza CASE para este caso y genera una COLUMNA por cada tipo de ventas_det.tipo_pago
  #3 (permalink)  
Antiguo 16/12/2009, 11:13
Avatar de brygom  
Fecha de Ingreso: marzo-2008
Mensajes: 79
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Resultado en una consulta con diferentes condiciones

Gracias por responder. Bueno voy a investigar entonces lo que dices.

Saludos!
  #4 (permalink)  
Antiguo 16/12/2009, 14:55
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Resultado en una consulta con diferentes condiciones

SELECT
CASE WHEN ventas_det.tipo_pago = 'Efectivo' THEN ventas_det.precio* ventas_det.cantidad END as Venta_Efectivo,
CASE WHEN ventas_det.tipo_pago = 'Cheque' THEN ventas_det.precio* ventas_det.cantidad END as Venta_Cheque,
CASE WHEN ventas_det.tipo_pago = 'Credito' THEN ventas_det.precio* ventas_det.cantidad END as Venta_Credito,
ventas_enc.Fecha
FROM ventas_det INNER JOIN ventas_enc ON ventas_enc.id_ventas = ventas_det.id_ventas
WHERE ventas_det.id_ventas IN(select ventas_enc.id_ventas from ventas_enc where ventas_enc.id_almacenes = 1
and ventas_enc.Fecha between '2009-12-01' and '2009-12-03')
  #5 (permalink)  
Antiguo 17/12/2009, 15:13
Avatar de brygom  
Fecha de Ingreso: marzo-2008
Mensajes: 79
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Resultado en una consulta con diferentes condiciones

Muchas gracias! Asi es como lo necesitaba..
Saludos!
  #6 (permalink)  
Antiguo 17/12/2009, 15:47
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Resultado en una consulta con diferentes condiciones

De nada....saludos
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 17:40.