🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.bd.misc
Article #86

Re: MySQL - Seleccionar entre 2 fechas

#86
From: Manuel Gomez
Date: Mon, 05 Dec 2005 08:57
48 lines
2587 bytes
Diego en las news de es.comp.bd.misc dijo:

> Hola.
> Estoy aprendiendo sobre la marcha php+sql .. y ahora tengo una duda.
> Estoy tratando de seleccionar entre dos meses dados, a mis amigos que
> cumplen a�os.
> 
> Tengo 4 menulist (mesdede,aniodesde, meshasta, aniohasta) y los siguientes
> campos en la DB:
> 
> idCumple (autonumerico, que es con lo cual relaciono)
> fecha      (date - YYYY-MM-DD)
> horaini    (time - 00:00:00)
> horafin    (time - 00:00:00)
> 
> como puedo hacer para seleccionar los datos entre el primer dia del mes
> (mesdesde) al ultimo del meshasta ?
> 
> gracias
> 
> diego
$fecha_desde = "$aniodesde-$mesdesde";
$fecha_hasta = "$aniohasta-$meshasta";
if ($fecha_hasta < $fecha_desde) {
        // Cambio de mes inicial por final si es mayor el final que el inicial
        $tmp = $fecha_hasta;
        $fecha_hasta = $fecha_desde;
        $fecha_desde = $tmp;
        list($aniodesde,$mesdesde) = split("-",$fechahasta);
        list($aniohasta,$meshasta) = split("-",$fechadesde);
}
$fecha_desde .= "-01";
switch ($meshasta) {
        case 4,6,9,11:
                $diahasta = 30;
                break;
        case 2:
                // BUSCA A�O BISIESTO
                break;  
        default:
                $diahasta = 31;
}
$fecha_hasta .= "-$diahasta";
$cQuery  = "SELECT * FROM Tabla_cumple WHERE fecha BETWEEN '$fecha_desde'
AND '$fecha_hasta'";
Esto es solo para fechas, con un tipo de campo fecha datetime, entonces en
fecha_hasta lo tienes que cambiar por FROM_DAYS(TO_DAYS(fecha_hasta)+1)
Un saludo.
Technical Details
Message-ID: <4iTkf.217737$E72.2062265@telenews.teleline.es>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!newsread.com!news-xfer.newsread.com!news-out.usenet.com!propagator2-sterling.newsfeeds.com!in.nntp.be!caladan.landsraad.net!telenews.teleline.es!not-for-mail
References: <dmvhp2$hc3$1@domitilla.aioe.org>

Show Full Headers
Complete Article Headers
X-Google-Thread: 106e2f,38ff2cc16b437bf4
X-Google-Attributes: gid106e2f,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!newsread.com!news-xfer.newsread.com!news-out.usenet.com!propagator2-sterling.newsfeeds.com!in.nntp.be!caladan.landsraad.net!telenews.teleline.es!not-for-mail
X-Trace-PostClient-IP: 80.36.3.111
From: Manuel Gomez <Una@cualquiera.com>
Subject: Re: MySQL - Seleccionar entre 2 fechas
Newsgroups: es.comp.bd.misc
References: <dmvhp2$hc3$1@domitilla.aioe.org>
Lines: 48
User-Agent: KNode/0.8.2
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-15
Content-Transfer-Encoding: 8Bit
Message-ID: <4iTkf.217737$E72.2062265@telenews.teleline.es>
Date: Mon, 05 Dec 2005 08:57:36 GMT
NNTP-Posting-Host: 10.20.31.4
X-Complaints-To: usenet@teleline.es
X-Trace: telenews.teleline.es 1133773056 10.20.31.4 (Mon, 05 Dec 2005 09:57:36 MET)
NNTP-Posting-Date: Mon, 05 Dec 2005 09:57:36 MET
Organization: Terra Networks