Duda con fechas en sql

09/05/2007 - 12:02 por Javi | Informe spam
Hola a todos,

Tengo que realizar una sql y no consigo obtener el resultado deseao y como
última opción recurro a ustedes a ver si me pueden echar una mano.

Tengo una tabla con una serie de registros, cada registro tiene una fecha.
El campo fecha es de tipo detatime y tiene formado español, por ejemplo:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007
30/03/2007
30/03/2007
...

Puede haber fechas repetidas como se puede observar.

Lo que deseo es obtener un listado con todas las fecha con un máximo de 20
días, es decir, obtener los registros:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007

Los 30/03/2007 y 30/03/2007 no porque es mas de 20 días,

Alguiene me puede ayudar con la sql.

Gracias a todos,

Saludos,

Preguntas similare

Leer las respuestas

#1 Salvador Ramos
09/05/2007 - 13:56 | Informe spam
Hola,

No tengo muy claro que es lo que quieres, seleccionas tu el rango de fechas
(desde y hasta), quieres 20 días a partir de alguna fecha en concreto, de
una fecha de otra tabla, a partir de la fecha del sistema, ...

Un saludo
Salvador Ramos

www.helpdna.net (información sobre SQL Server y Microsoft .Net)
www.helpdna.net/acerca_de_salvador_ramos.htm


"Javi" escribió en el mensaje
news:
Hola a todos,

Tengo que realizar una sql y no consigo obtener el resultado deseao y como
última opción recurro a ustedes a ver si me pueden echar una mano.

Tengo una tabla con una serie de registros, cada registro tiene una fecha.
El campo fecha es de tipo detatime y tiene formado español, por ejemplo:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007
30/03/2007
30/03/2007
...

Puede haber fechas repetidas como se puede observar.

Lo que deseo es obtener un listado con todas las fecha con un máximo de 20
días, es decir, obtener los registros:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007

Los 30/03/2007 y 30/03/2007 no porque es mas de 20 días,

Alguiene me puede ayudar con la sql.

Gracias a todos,

Saludos,
Respuesta Responder a este mensaje
#2 Alejandro Mesa
09/05/2007 - 15:05 | Informe spam
Javi,

Los 30/03/2007 y 30/03/2007 no porque es mas de 20 días,



Mas de veinte dias comparado contra que fecha, fecha corriente, fecha mas
vieja en la tabla, etc.?


AMB


"Javi" wrote:

Hola a todos,

Tengo que realizar una sql y no consigo obtener el resultado deseao y como
última opción recurro a ustedes a ver si me pueden echar una mano.

Tengo una tabla con una serie de registros, cada registro tiene una fecha.
El campo fecha es de tipo detatime y tiene formado español, por ejemplo:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007
30/03/2007
30/03/2007
...

Puede haber fechas repetidas como se puede observar.

Lo que deseo es obtener un listado con todas las fecha con un máximo de 20
días, es decir, obtener los registros:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007

Los 30/03/2007 y 30/03/2007 no porque es mas de 20 días,

Alguiene me puede ayudar con la sql.

Gracias a todos,

Saludos,
Respuesta Responder a este mensaje
#3 Rubén Vigón
09/05/2007 - 17:45 | Informe spam
Con un máximo de 20 días... ¿respecto a qué día?

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic
http://vigon.mvps.org
Respuesta Responder a este mensaje
#4 Jose Mariano Alvarez
09/05/2007 - 23:07 | Informe spam
En el post ,
DIJO .
Hola a todos,

Tengo que realizar una sql y no consigo obtener el resultado deseao y como
última opción recurro a ustedes a ver si me pueden echar una mano.

Tengo una tabla con una serie de registros, cada registro tiene una fecha.
El campo fecha es de tipo detatime y tiene formado español, por ejemplo:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007
30/03/2007
30/03/2007
...

Puede haber fechas repetidas como se puede observar.

Lo que deseo es obtener un listado con todas las fecha con un máximo de 20
días, es decir, obtener los registros:

21/04/2007
09/04/2007
09/04/2007
07/04/2007
06/04/2007

Los 30/03/2007 y 30/03/2007 no porque es mas de 20 días,

Alguiene me puede ayudar con la sql.

Gracias a todos,

Saludos,




Un par de detalles. El campo no tiene formato español ni ningun otro
formato. Es un campo fecha y punto.

Para poner un rango puedes usar una condicion parecida a esta

Where Fecha >= (valor - 20 dias)
and Fecha < Valor

Ahora (valor - 20 dias) se obtiene haciendo:

Dateadd(day, -20, valor)

En todos los casos valor es o una variable o un campo o una
representacion de una fecha que te sugiero si la envias en strig sea en
formato ANSI/ISO o sea 'AAAAMMDD'



Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)


IMPORTANTE

Por favor traten de indicar la versión de SQL y Service Pack.
La inclusión de (CREATE, INSERTS, etc.) para poder reproducir el
problema también ayuda.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida