Ver Mensaje Individual
  #4  
Antiguo 31-01-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 947
Reputación: 25
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Amigo talvez te sirva este codigo, lo escribi (Firebird) hace algun tiempo...

Es un procedimiento almacenado.

Como llamarlo:

SELECT * FROM Dias_Entre_Fechas(Fecha_Inicial, Fecha_Final)

Retorna
DAY$NUMBER DAY$NAME DAY$DATE
--------------------------------------
1 MARTES 12/01/2010
2 MIERCOLES 13/01/2010
3 JUEVES 14/01/2010
4 VIERNES 15/01/2010

Código SQL [-]
CREATE PROCEDURE DIAS_ENTRE_FECHAS (
    first$date DATE,
    last$date DATE)
RETURNS (
    day$number INTEGEr,
    day$name CHAR(10),
    day$date DATE )
AS
DECLARE VARIABLE day$week INTEGER;
begin
  /* Procedure Text */

     day$date= FIRST$DATE;
     day$number = 0;

     while (day$date <= LAST$DATE) DO
     begin
          day$week=extract(weekday from day$date);

          IF (day$week=0) THEN
             day$name='DOMINGO';
          ELSE IF (day$week=1) THEN
             day$name='LUNES';
          ELSE IF (day$week=2) THEN
             day$name='MARTES';
          ELSE IF (day$week=3) THEN
             day$name='MIERCOLES';
          ELSE IF (day$week=4) THEN
             day$name='JUEVES';
          ELSE IF (day$week=5) THEN
             day$name='VIERNES';
          ELSE IF (day$week=6) THEN
             day$name='SABADO';

          day$number    = day$number+1;
          suspend;

          day$date = day$date+1;
     end


end

Lo puedes adaptar a MySQL...Espero te sirva...

Saludos desde
Concepcion-Chile
Responder Con Cita