Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-06-2006
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Consulta Complicada

Siento el nombre del hilo pero no se como resumir mi problema en una línea.

Os cuento lo mismo es muy fácil y hoy yo estoy denso pero bueno... ahi va...

Tengo una tabla(Configuracion) con un único registro en el cual hay un campo llamado FechaActiva y contiene una fecha.

Bien ahora tengo otra tabla(CalendarioLaboral) en el que cada registro contiene un campo que le llamo Fx_Imputa donde están introducidos todos los días laborables del año.

Bueno pues lo que quiero es hacer una consulta que me saque la cuenta(count) de registros en la tabla CalendarioLaboral dependiendo del valor del campo FechaActiva de la tabla Configuracion) ;

Ejemplo:

Si el valor es 1/1/2006 que me saque los registros que sean menores o iguales a 15 de enero de 2006

Si el valor es 15/1/2006 que me saque los registros que sean mayores a 15 de enero de 2006


El campo FechaActiva solo puede tomar esos dos valores dentro de un mes, es decir que siempre será el uno del mes tal o el quince del mismo mes tal.

Dios mio que lio.... esto lo quiero hacer con una consulta sql, sin paso de parámetros ni nada.

Ya me diréis si me podéis echar una mano

Muchas gracias de antemano,

Saludos, Tony
Responder Con Cita
  #2  
Antiguo 08-06-2006
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
esto es en mssql, a lo mejor te sirve buscando funciones similares con tu manejador de bases:

Código SQL [-]
Select Fx_Imputa from CalendarioLaboral
Where 
(Fx_Imputa <= (Select Top1 FechaActiva+14 From Configuracion) and DatePart(date, (Select Top1 FechaActiva From Configuracion)) = 1)
or
(FX_Imputa > (Select Top1 FechaActiva From Configuracion) and DatePart(date, (Select Top1 FechaActiva From Configuracion)) = 15)

el +14 es para aumentar 14 dias al dia 1, y que te de los 15
Responder Con Cita
  #3  
Antiguo 09-06-2006
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Gracias por tu respuesta, pero no me sirvió al final lo hice asi.

Código SQL [-]
select  if ((select day(FechaActivo) from Configuracion) =1, (select count( Fx_Imputa)
from CalendarioLaboral
where (month(Fx_Imputa) = (select month(FechaActivo) from Configuracion)) and (year(Fx_Imputa) = (select year(FechaActivo) from Configuracion)) and (day(Fx_Imputa) >=1) and (day(Fx_Imputa) <=15))
,(select count(Fx_Imputa)
from CalendarioLaboral
where (month(Fx_Imputa) = (select month(FechaActivo) from Configuracion)) and (year(Fx_Imputa) = (select year(FechaActivo) from Configuracion)) and (day(Fx_Imputa) >15)) 
) as Dias

no se si existirá otra manera....
Saludos, Tony
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta complicada Luciano M. SQL 6 01-12-2005 19:30:15
Consulta complicada cval SQL 4 21-09-2005 18:04:27
Consulta para experimentados COMPLICADA!! marceloalegre SQL 0 27-07-2005 01:06:03
Consulta Complicada NickName SQL 6 29-04-2004 07:33:31
Complicada consulta mosorio SQL 3 12-08-2003 20:12:00


La franja horaria es GMT +2. Ahora son las 19:42:17.


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
Copyright 1996-2007 Club Delphi