mostrar fechas desde un mes determinado a la fecha de hoy...

20/11/2006 - 18:51 por Daniel G. Samborski | Informe spam
Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
20/11/2006 - 19:44 | Informe spam
Daniel,

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?



declare @d datetime

set @d = '20061120' -- cualquier fecha del mes en cuestion

select *
from dbo.t1
where
fecha >= convert(char(6), @d, 112) + '01'
fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
go

Si deseas ver todas las filas para el mes de Nov del 2006, entonces la
expresion quedara algo asi como:

...
where fecha >= '20061101' and fecha < '20061201'

2.) Tengo que tirar un listado de los clientes que deban a partir de un mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre quien
debe desde Agosto de 1973



Puedes usar la expresion de la pregunta 1 para chequear existencia.

use northwind
go

create table #t (
fecha datetime,
[id] int
)

insert into #t values('19900101', 1)
insert into #t values('19980201', 2)
insert into #t values('20001213', 3)
insert into #t values('20010101', 4)
insert into #t values('19730818', 5)
insert into #t values('19730921', 5)
insert into #t values('19731023', 5)
insert into #t values('19730921', 6)
insert into #t values('19731118', 5)
insert into #t values('19731014', 6)
go

declare @d datetime

set @d = '19730801'

select
fecha, [id]
from
#t as a
where
fecha >= convert(char(6), @d, 112) + '01'
and exists (
select *
from #t as b
where
b.[id] = a.[id]
and fecha >= convert(char(6), @d, 112) + '01'
and fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
)
go

drop table #t
go


AMB


"Daniel G. Samborski" wrote:

Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.



Respuesta Responder a este mensaje
#2 Daniel G. Samborski
20/11/2006 - 20:16 | Informe spam
Funciona de maravilla, muchas gracias.


Daniel.

"Alejandro Mesa" escribió en el
mensaje news:
Daniel,

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si
le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?



declare @d datetime

set @d = '20061120' -- cualquier fecha del mes en cuestion

select *
from dbo.t1
where
fecha >= convert(char(6), @d, 112) + '01'
fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
go

Si deseas ver todas las filas para el mes de Nov del 2006, entonces la
expresion quedara algo asi como:

...
where fecha >= '20061101' and fecha < '20061201'

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973



Puedes usar la expresion de la pregunta 1 para chequear existencia.

use northwind
go

create table #t (
fecha datetime,
[id] int
)

insert into #t values('19900101', 1)
insert into #t values('19980201', 2)
insert into #t values('20001213', 3)
insert into #t values('20010101', 4)
insert into #t values('19730818', 5)
insert into #t values('19730921', 5)
insert into #t values('19731023', 5)
insert into #t values('19730921', 6)
insert into #t values('19731118', 5)
insert into #t values('19731014', 6)
go

declare @d datetime

set @d = '19730801'

select
fecha, [id]
from
#t as a
where
fecha >= convert(char(6), @d, 112) + '01'
and exists (
select *
from #t as b
where
b.[id] = a.[id]
and fecha >= convert(char(6), @d, 112) + '01'
and fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
)
go

drop table #t
go


AMB


"Daniel G. Samborski" wrote:

Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si
le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.



Respuesta Responder a este mensaje
#3 Daniel G. Samborski
21/11/2006 - 13:27 | Informe spam
Hola Alejandro, como te mencione el codigo que me facilitaste me sirve de
maravilla.
Pero tengo problemas para implementarlo en mi aplicacion, si podes ayudarme
una vez mas y decirme en que sitio deberia colocar o como colocar el codigo
te lo agradeceria.
Mi codigo es el siguiente.


select cli.CodCli,cuo.nrocto,cli.NroDoc, cli.Nombre, cli.NroTel,
cli.CodLoc,cuo.NroCuo, cre.Cuotas, cuo.FecVen,
cre.FecSol, com.Social, com.NroTel
from creditos cre inner join clientes cli
on cre.codcli=cli.codcli
and cre.fecsol between coalesce(@FechaSol1, 0) and coalesce(@FechaSol1,
getdate())
and (cli.codloc=@CodLoc or cli.codloc like @CodLoc+'%')
and (cli.codcli=@codcli or cli.codcli like @Codcli+'%')
and (cre.nrocto=@nrocto or cre.nrocto like @nrocto+'%')
inner join cuotas cuo
on cre.nrocto=cuo.nrocto
and cuo.fecpag is null
and cuo.fecven between coalesce(@MesAbuscar, 0) and getdate()
inner join comercio com
on cre.codcom=com.codcom
and (com.social=@Social or com.social like @social+'%')
order by cuo.fecven, cli.nombre, cre.nrocto


En donde deberia o como deberia colocar el codigo que vos me facilitaste.


Daniel.

"Alejandro Mesa" escribió en el
mensaje news:
Daniel,

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si
le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?



declare @d datetime

set @d = '20061120' -- cualquier fecha del mes en cuestion

select *
from dbo.t1
where
fecha >= convert(char(6), @d, 112) + '01'
fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
go

Si deseas ver todas las filas para el mes de Nov del 2006, entonces la
expresion quedara algo asi como:

...
where fecha >= '20061101' and fecha < '20061201'

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973



Puedes usar la expresion de la pregunta 1 para chequear existencia.

use northwind
go

create table #t (
fecha datetime,
[id] int
)

insert into #t values('19900101', 1)
insert into #t values('19980201', 2)
insert into #t values('20001213', 3)
insert into #t values('20010101', 4)
insert into #t values('19730818', 5)
insert into #t values('19730921', 5)
insert into #t values('19731023', 5)
insert into #t values('19730921', 6)
insert into #t values('19731118', 5)
insert into #t values('19731014', 6)
go

declare @d datetime

set @d = '19730801'

select
fecha, [id]
from
#t as a
where
fecha >= convert(char(6), @d, 112) + '01'
and exists (
select *
from #t as b
where
b.[id] = a.[id]
and fecha >= convert(char(6), @d, 112) + '01'
and fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
)
go

drop table #t
go


AMB


"Daniel G. Samborski" wrote:

Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que si
le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.



Respuesta Responder a este mensaje
#4 Javier Loria
21/11/2006 - 13:53 | Informe spam
Hola Daniel:
Si Alejandro me permite, asumo que lo que debes cambiar es la siguiente
seccion:
=and cuo.fecven between coalesce(@MesAbuscar, 0) and getdate()
== Y si asumimos que @MesAbuscar puede ser NULL, y adapando el codigo de
Alejandro a un BETWEEN entonces podria escribirse asi:
==AND cuo.fecven BETWEEN CONVERT(char(6), COALESCE(@MesAbuscar,0), 112) + '01'
AND DATEADD(day,-1, DATEADD(month, 1,
convert(char(6), COALESCE(@MesAbuscar,0), 112) + '01'))
== Nota varias cosas
a) En el cada vez que usas @MesAbuscar use el missmo coalesce que el codigo
que suministrate.
b) Hay que adaptar el codigo de Alejandro restandole un dia a la fecha final
porque el BETWEEN funciona como <= y no como <.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Daniel G. Samborski" wrote in
message news:
Hola Alejandro, como te mencione el codigo que me facilitaste me sirve de
maravilla.
Pero tengo problemas para implementarlo en mi aplicacion, si podes
ayudarme una vez mas y decirme en que sitio deberia colocar o como colocar
el codigo te lo agradeceria.
Mi codigo es el siguiente.


select cli.CodCli,cuo.nrocto,cli.NroDoc, cli.Nombre, cli.NroTel,
cli.CodLoc,cuo.NroCuo, cre.Cuotas, cuo.FecVen,
cre.FecSol, com.Social, com.NroTel
from creditos cre inner join clientes cli
on cre.codcli=cli.codcli
and cre.fecsol between coalesce(@FechaSol1, 0) and coalesce(@FechaSol1,
getdate())
and (cli.codloc=@CodLoc or cli.codloc like @CodLoc+'%')
and (cli.codcli=@codcli or cli.codcli like @Codcli+'%')
and (cre.nrocto=@nrocto or cre.nrocto like @nrocto+'%')
inner join cuotas cuo
on cre.nrocto=cuo.nrocto
and cuo.fecpag is null
and cuo.fecven between coalesce(@MesAbuscar, 0) and getdate()
inner join comercio com
on cre.codcom=com.codcom
and (com.social=@Social or com.social like @social+'%')
order by cuo.fecven, cli.nombre, cre.nrocto


En donde deberia o como deberia colocar el codigo que vos me facilitaste.


Daniel.

"Alejandro Mesa" escribió en el
mensaje news:
Daniel,

1.) necesito realizar un filtro de todos los dias de un mes, osea, que
si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?



declare @d datetime

set @d = '20061120' -- cualquier fecha del mes en cuestion

select *
from dbo.t1
where
fecha >= convert(char(6), @d, 112) + '01'
fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
go

Si deseas ver todas las filas para el mes de Nov del 2006, entonces la
expresion quedara algo asi como:

...
where fecha >= '20061101' and fecha < '20061201'

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973



Puedes usar la expresion de la pregunta 1 para chequear existencia.

use northwind
go

create table #t (
fecha datetime,
[id] int
)

insert into #t values('19900101', 1)
insert into #t values('19980201', 2)
insert into #t values('20001213', 3)
insert into #t values('20010101', 4)
insert into #t values('19730818', 5)
insert into #t values('19730921', 5)
insert into #t values('19731023', 5)
insert into #t values('19730921', 6)
insert into #t values('19731118', 5)
insert into #t values('19731014', 6)
go

declare @d datetime

set @d = '19730801'

select
fecha, [id]
from
#t as a
where
fecha >= convert(char(6), @d, 112) + '01'
and exists (
select *
from #t as b
where
b.[id] = a.[id]
and fecha >= convert(char(6), @d, 112) + '01'
and fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
)
go

drop table #t
go


AMB


"Daniel G. Samborski" wrote:

Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que
si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.









Respuesta Responder a este mensaje
#5 Daniel G. Samborski
21/11/2006 - 14:14 | Informe spam
Hola Javier.
Muchas gracias pero olvide mencionar que lo que necesito es el segundo
codigo en el mio.

select NroCuo, FecVen, NroCto
from cuotas as a
where
fecven >= convert(char(6), @mesAbuscar, 112) + '01'
and exists
(
select * from cuotas as b
where b.nrocto=a.nrocto
and
fecven >= convert(char(6), @mesAbuscar, 112) + '01'
and
fecven < dateadd(month, 1, convert(char(6), @mesAbuscar, 112) + '01')
)

El que vos me facilitaste hace lo que este otro, muestra todo lo de un mes y
año a la fecha siempre que el cliente deba el mes de inicio...


Daniel.

"Javier Loria" escribió en el mensaje
news:
Hola Daniel:
Si Alejandro me permite, asumo que lo que debes cambiar es la siguiente
seccion:
=> and cuo.fecven between coalesce(@MesAbuscar, 0) and getdate()
==> Y si asumimos que @MesAbuscar puede ser NULL, y adapando el codigo de
Alejandro a un BETWEEN entonces podria escribirse asi:
==> AND cuo.fecven BETWEEN CONVERT(char(6), COALESCE(@MesAbuscar,0), 112) +
'01'
AND DATEADD(day,-1, DATEADD(month, 1,
convert(char(6), COALESCE(@MesAbuscar,0), 112) + '01'))
==> Nota varias cosas
a) En el cada vez que usas @MesAbuscar use el missmo coalesce que el
codigo que suministrate.
b) Hay que adaptar el codigo de Alejandro restandole un dia a la fecha
final porque el BETWEEN funciona como <= y no como <.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Daniel G. Samborski" wrote in
message news:
Hola Alejandro, como te mencione el codigo que me facilitaste me sirve de
maravilla.
Pero tengo problemas para implementarlo en mi aplicacion, si podes
ayudarme una vez mas y decirme en que sitio deberia colocar o como
colocar el codigo te lo agradeceria.
Mi codigo es el siguiente.


select cli.CodCli,cuo.nrocto,cli.NroDoc, cli.Nombre, cli.NroTel,
cli.CodLoc,cuo.NroCuo, cre.Cuotas, cuo.FecVen,
cre.FecSol, com.Social, com.NroTel
from creditos cre inner join clientes cli
on cre.codcli=cli.codcli
and cre.fecsol between coalesce(@FechaSol1, 0) and coalesce(@FechaSol1,
getdate())
and (cli.codloc=@CodLoc or cli.codloc like @CodLoc+'%')
and (cli.codcli=@codcli or cli.codcli like @Codcli+'%')
and (cre.nrocto=@nrocto or cre.nrocto like @nrocto+'%')
inner join cuotas cuo
on cre.nrocto=cuo.nrocto
and cuo.fecpag is null
and cuo.fecven between coalesce(@MesAbuscar, 0) and getdate()
inner join comercio com
on cre.codcom=com.codcom
and (com.social=@Social or com.social like @social+'%')
order by cuo.fecven, cli.nombre, cre.nrocto


En donde deberia o como deberia colocar el codigo que vos me facilitaste.


Daniel.

"Alejandro Mesa" escribió en el
mensaje news:
Daniel,

1.) necesito realizar un filtro de todos los dias de un mes, osea, que
si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?



declare @d datetime

set @d = '20061120' -- cualquier fecha del mes en cuestion

select *
from dbo.t1
where
fecha >= convert(char(6), @d, 112) + '01'
fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
go

Si deseas ver todas las filas para el mes de Nov del 2006, entonces la
expresion quedara algo asi como:

...
where fecha >= '20061101' and fecha < '20061201'

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973



Puedes usar la expresion de la pregunta 1 para chequear existencia.

use northwind
go

create table #t (
fecha datetime,
[id] int
)

insert into #t values('19900101', 1)
insert into #t values('19980201', 2)
insert into #t values('20001213', 3)
insert into #t values('20010101', 4)
insert into #t values('19730818', 5)
insert into #t values('19730921', 5)
insert into #t values('19731023', 5)
insert into #t values('19730921', 6)
insert into #t values('19731118', 5)
insert into #t values('19731014', 6)
go

declare @d datetime

set @d = '19730801'

select
fecha, [id]
from
#t as a
where
fecha >= convert(char(6), @d, 112) + '01'
and exists (
select *
from #t as b
where
b.[id] = a.[id]
and fecha >= convert(char(6), @d, 112) + '01'
and fecha < dateadd(month, 1, convert(char(6), @d, 112) + '01')
)
go

drop table #t
go


AMB


"Daniel G. Samborski" wrote:

Hola de nuevo, en primer lugar me gustaria agradecer a los que han
respondido anteriormente, me han ayudado bastante.
Ahora estoy de nuevo con dos dudas.

1.) necesito realizar un filtro de todos los dias de un mes, osea, que
si le
paso una fecha dd/mm/yyyy me muestre todos los clientes que esten
comprendidos dentro de ese mes y año sin considerar el dia.
¿Como podria lograr esto?

2.) Tengo que tirar un listado de los clientes que deban a partir de un
mes
en adelante.
Por ejemplo, si pido el listado de los clientes que deben agosto, me
muestre
los que deban agosto, septiembre, octubre, noviembre, etc...
Pero que todos deban agosto, si alguno debe a partir de septiembre u
octubre
u otro mes, no lo muestre ya que no debe agosto.
Supongamos que esta es la lista de fechas. y solicito que me muestre
quien
debe desde Agosto de 1973

fechas id
01/01/1990 1
01/02/1998 2
13/12/2000 3
01/01/2001 4
18/08/1973 5
21/09/1973 5
23/10/1973 5
21/09/1973 6
18/11/1973 5
14/10/1973 6

Me deberia mostrar solo el cliente Nº 5 que debe agosto en adelante...
18/08/1973 5
21/09/1973 5
23/10/1973 5
18/11/1973 5

Y no el cliente Nº 6 que debe desde Septiembre.
21/09/1973 6
14/10/1973 6



Daniel.













Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida