Martin Ploug wrote:
>> SELECT * FROM tabel
>> WHERE felt > DATE_ADD(NOW(), INTERVAL 1 DAYS)
>>
>> <
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html>
>> Er altid et godt sted at kigge når man skal lege med dato funktioner i
>> mysql
>
> Hej
>
> Kræver DATE_ADD ikke, at jeg kender de eksakte datoer?
Nææ..
>
> Jeg har kigget på
>
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_date-add
>
>
> men jeg tror ikke jeg helt forstår, hvordan man bruger DATE_ADD og
> INTERVAL.
>
> Altså med DATE_ADD kan man indsætte to datoer?
Ja, det kan man også...
> Hvad så, hvis de to datoer er dynamiske (se nedenstående) ?
> Hvad gør INTERVAL?
Tager et interval fra den første angivet dato
>
> Jeg ønsker at finde records, som er oprettet inden for 3 måneder
> (eller f.eks. 90 dage) fra dags dato.
NOW() = Dags dato, eller rettere sagt, den dags dato queryen bliver udført
Hvis du så vil finde fra de sidste 90 dage
INTERVAL 90 DAYS
DATE_SUB(NOW(), INTERVAL 90 DAYS)
>
> Dags dato skal ikke være en fast bestemt dato, men den dato det
> er den pågældende dag man vælger at køre forespørgslen
> Datoen tre måneder tilbage er heller ikke en fast bestemt dato,
> men den dato det er 3 måneder tilbage fra dato for kørsel af
> forespørgslen.
NOW() er ALTID dags dato og faktisk også klokken :), hvis du ønsker en
anden dato, så kan du bare skrive det ind istedet.
DATE_ADD('2008-25-01', INTERVAL 90 DAYS)
Hvis du fx. ønsker rækker imellem 2 datoer, så kan BETWEEN bruges
WHERE (datofelt BETWEEN NOW() AND 2008-01-01)