Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   SQL Server (http://www.forosdelweb.com/f87/)
-   -   Consulta de 2 Tablas (http://www.forosdelweb.com/f87/consulta-2-tablas-417876/)

JoseGCB 17/08/2006 06:54

Consulta de 2 Tablas
 
Saludos ,

Tengo la siguinte duda.

Tengo 2 Tablas La de
Empleados:
Id_Empleado
......

Movimientos
IdMovimiento
IdEmpleado
Fecha
Monto

Lo que quiero hacer es una consulta que me devuenva el saldo de todos los empleados dado una fecha
la cuestion s que si el empleado no tiene movimientos es esa fecha no aprarece en la consulta , yo quiero que si no tiene movimientos en esa fecha su saldo sea de cero y me aparezca el la consulta




muchas gracias por su ayuda

saludos:arriba:

Andres95 17/08/2006 07:25

Código:

select IdEmpleado, sum(monto) as Total
From Empleados e (nolock)
Left outer join
      Movimientos m (nolock)
On  e.IdEmpleado = m.IdEmpleado
Where
      m.Fecha = @MiVarFecha
Group by
      e.IdEmpleado


JoseGCB 17/08/2006 07:48

Gracias Andres
Eso es mas o menos la consulta que tengo el problema es que solo trae los empleados que tienen movimientos en esa fecha y yo quiero que traiga todos los empleados y los que no tienen movimiento su saldo sea 0

Código:

SELECT        Trabajador.IdTrabajador
SUM(CASE WHEN TipodeConcepto = 0 THEN Movimientos.Monto ELSE Movimientos.Monto * (- 1) END )AS SaldoInicial
FROM          Trabajador LEFT JOIN
  Trabajador.IdTrabajador = Movimientos.IdTrabajador
where  Movimientos.FechaDeMovimiento < '08/17/2002'
Group by Trabajador.IdTrabajador

yo quisiera que me devolvira todos los trabajadores asi no tenga movimientos

Andres95 17/08/2006 08:23

Ok, me equivoque... la validacion de la fecha debe ir en el
On.
Código:

select IdEmpleado, sum(monto) as Total
From Empleados e (nolock)
Left outer join
      Movimientos m (nolock)
On  e.IdEmpleado = m.IdEmpleado And
      m.Fecha = @MiVarFecha
Group by
      e.IdEmpleado


JoseGCB 17/08/2006 13:05

Gracias por tu ayuda

La Consulta me funciono y hace lo que queria:arriba: :arriba: :cool:


La zona horaria es GMT -6. Ahora son las 10:04.

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