Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-12-2008
Avatar de JoseAntonio
JoseAntonio JoseAntonio is offline
Miembro
 
Registrado: abr 2006
Ubicación: Lima - Ciudad de los Reyes.
Posts: 87
Poder: 19
JoseAntonio Va por buen camino
fecha de inicio del mes de una fecha especifica

Holas, quisiera saber como obtener la fecha de inicio del mes de una fecha especifica del tipo date, gracias de antemano

JOSe
__________________
nuestro carácter está reflejado en cada línea de código que escribimos.
Responder Con Cita
  #2  
Antiguo 30-12-2008
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 17
hecospina Va por buen camino
Cool

Hola JoseAntonio
Realmente no se lo que quieres, tu pregunta no es clara, regularmente todos los meses empiezan el 01, si lo que quieres saber es el dia o sea domingo, lunes, martes etc, en firebird puedes hacer un select que te trae el dia de la semana
Código SQL [-]
select (weekday from fecha) from tabla
esto de da como respuesta 0 domingo, 1 lunes y asi sucesivamente, convinado como un case o con un iif puedes tener como respuesta,
por ejemplo

lunes 29/12/2008

Espero te ayude o expliques mejor tu pregunta

Suerte
Responder Con Cita
  #3  
Antiguo 30-12-2008
Avatar de JoseAntonio
JoseAntonio JoseAntonio is offline
Miembro
 
Registrado: abr 2006
Ubicación: Lima - Ciudad de los Reyes.
Posts: 87
Poder: 19
JoseAntonio Va por buen camino
Hola Ecospina; parametro de entrada: 29/11/2008 .... parametro de salida: 1/11/2008, en delphi es sencillo pero nose como lo hacen en firebird, quizas con algun decodedate o algo analogo?

Cita:
Empezado por hecospina Ver Mensaje
Hola JoseAntonio
Realmente no se lo que quieres, tu pregunta no es clara, regularmente todos los meses empiezan el 01, si lo que quieres saber es el dia o sea domingo, lunes, martes etc, en firebird puedes hacer un select que te trae el dia de la semana
Código SQL [-]select (weekday from fecha) from tabla

esto de da como respuesta 0 domingo, 1 lunes y asi sucesivamente, convinado como un case o con un iif puedes tener como respuesta,
por ejemplo

lunes 29/12/2008

Espero te ayude o expliques mejor tu pregunta

Suerte
__________________
nuestro carácter está reflejado en cada línea de código que escribimos.
Responder Con Cita
  #4  
Antiguo 30-12-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Pues yo tampoco entiendo muy bien la pregunta, tal vez lo que quieres es...

Código SQL [-]
select extract(day from fecha) from tabla
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #5  
Antiguo 30-12-2008
Avatar de JoseAntonio
JoseAntonio JoseAntonio is offline
Miembro
 
Registrado: abr 2006
Ubicación: Lima - Ciudad de los Reyes.
Posts: 87
Poder: 19
JoseAntonio Va por buen camino
la idea es como creo un store con estos parametros de entrada y salida

parametro de entrada: 29/11/2008 .... parametro de salida: 1/11/2008 en firebird,
el parametro de entrada puede ser cualquier fecha, y el parametro de salida tiene que devolver siempre el inicio del mes, (en formato date) lo necesito esto para generar la fecha de inicio del periodo, que es un campo que se autogenera o autocalcula en el beforeinsert de una tabla, vaya no pense dar tantos detalles, gracias de nuevo. espero esta vez si haber sido claro

Cita:
Empezado por jhonny Ver Mensaje
Pues yo tampoco entiendo muy bien la pregunta, tal vez lo que quieres es...


Código SQL [-]select extract(day from fecha) from tabla
__________________
nuestro carácter está reflejado en cada línea de código que escribimos.

Última edición por JoseAntonio fecha: 30-12-2008 a las 15:32:19.
Responder Con Cita
  #6  
Antiguo 30-12-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Ahhh, entendido... de pronto se me ocurre que si estas usando Firebird 2.1 o superior, puedes hacer lo siguiente:

Código SQL [-]
CREATE PROCEDURE SP_PRIMER_DIA (
    FECHA_ENTRADA date)
returns (
    FECHA_SALIDA date)
as
declare variable DIAS integer;
begin
  dias =  extract(day from :fecha_entrada);
  fecha_salida = dateadd(day, :dias*(-1)+1, :fecha_entrada);
  suspend;
end

Espero te sirva.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 30-12-2008
Avatar de JoseAntonio
JoseAntonio JoseAntonio is offline
Miembro
 
Registrado: abr 2006
Ubicación: Lima - Ciudad de los Reyes.
Posts: 87
Poder: 19
JoseAntonio Va por buen camino
Elegante solucion, aun no lo implemento pero ya se ve que funcionara, gracias amigo y feliz año 2009


Cita:
Empezado por jhonny Ver Mensaje
Ahhh, entendido... de pronto se me ocurre que si estas usando Firebird 2.1 o superior, puedes hacer lo siguiente:


Código SQL [-]CREATE PROCEDURE SP_PRIMER_DIA (
FECHA_ENTRADA date)
returns (
FECHA_SALIDA date)
as
declare variable DIAS integer;
begin
dias = extract(day from :fecha_entrada);
fecha_salida = dateadd(day, :dias*(-1)+1, :fecha_entrada);
suspend;
end




Espero te sirva.
__________________
nuestro carácter está reflejado en cada línea de código que escribimos.
Responder Con Cita
  #8  
Antiguo 01-01-2009
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 17
hecospina Va por buen camino
Hola
Tambien podrias hacer un select parecido a este

Código SQL [-]select cast(cast(extract(month from fecha) AS CHAR(2))||'/'||01||'/'||CAST(extract(year from fecha)) AS CHAR(4)) as date) as fechainicio
from tabla (
Responder Con Cita
  #9  
Antiguo 01-01-2009
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 17
hecospina Va por buen camino
Hola
Tambien podrias hacer un select parecido a este

Código SQL [-]
select cast(cast(extract(month from fecha) AS CHAR(2))||'/'||'01'||'/'||CAST(extract(year from fecha)) AS CHAR(4)) as date) as fechainicio 
from tabla
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
obtener solo la fecha en formato fecha y sin hora BlueSteel SQL 14 09-05-2008 16:42:19
Desde la fecha inicio hasta la fecha final que me grabe los meses contenidos Renis SQL 4 01-10-2007 17:21:44
Ayuda, Como calcular fecha de vencimiento mensual a partir de una fecha x en delphi Renis Impresión 4 23-08-2007 23:45:14
como filtrar las fechas que hay desde una fecha especifica a otra andre navarrete Conexión con bases de datos 3 13-08-2006 22:12:50
Comparar una fecha de n campo date contra fecha actual amadis SQL 2 27-06-2005 21:37:41


La franja horaria es GMT +2. Ahora son las 20:39:44.


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