Ver Mensaje Individual
  #6  
Antiguo 22-05-2017
Errorware Errorware is offline
Registrado
NULL
 
Registrado: may 2017
Posts: 1
Reputación: 0
Errorware Va por buen camino
Si entendi bien lo que quieres hacer la sentencia se debiera ver algo como (con sample data, claramente):

Código SQL [-]
CREATE TABLE #EntradasSalidasECS (
  EntradaSalidaECSId int, 
  TipoEntrada varchar(20), 
  TipoSalida varchar(20), 
  FechaEntrada date, 
  FechaSalida date)

CREATE TABLE #EntradasSalidasBEA (
  EntradaSalidaBEAId int, 
  TipoEntrada varchar(20), 
  TipoSalida varchar(20), 
  FechaEntrada date, 
  FechaSalida date)

INSERT INTO #EntradasSalidasECS VALUES 
  (1, 'E1', 'S2', '2017-01-01', '2017-01-02'),
  (2, 'E1', 'S2', '2017-02-01', '2017-02-02'),
  (3, 'E2', 'S2', '2017-03-01', '2017-03-02'),
  (4, 'E3', 'S1', '2017-04-01', '2017-04-02')

INSERT INTO #EntradasSalidasBEA VALUES 
  (1, 'E2', 'S1', '2017-05-01', '2017-05-02'),
  (2, 'E1', 'S1', '2017-06-01', '2017-06-02'),
  (3, 'E2', 'S3', '2017-07-01', '2017-07-02'),
  (4, 'E2', 'S3', '2017-08-01', '2017-08-02')

SELECT 
  *
FROM (
  SELECT * FROM #EntradasSalidasECS
  UNION ALL
  SELECT * FROM #EntradasSalidasBEA) t1
WHERE 
  t1.TipoEntrada = @TipoEntrada AND
  t1.TipoSalida = @TipoSalida AND
  t1.FechaSalida BETWEEN @FechaSalidaDesde AND @FechaSalidaHasta
  t1.FechaEntrada BETWEEN @FechaEntradaDesde AND @FechaEntradaHasta

Pero claramente si las dos tablas son tan similares hay un error de diseno... La solucion real seria fusionar las dos tablas y agregar un campo de 'Tipo de Movimiento' que haga referencia a una nueva tabla donde almacenas ECS, BEA... (para seguir con el ejemplo).

Saludos.
Responder Con Cita