Strip datetime

Tags:    databaser

Hej.

Jeg prøver at få strippet datetime ned til hvert enkelt. Altså d, m, y, Hi - sådan at jeg fra feltet datetime kan udskrive f-eks tallene for måned, dag, år eller tid.

Prøver med date_format(dato, '%d/%m-%y %H:%i') as nydato, MONTH(dato)as m, YEAR(dato) as y, DAY(dato) as d, HOUR(dato) as H, MINUTE(dato) as i from kalender where maaned = ? AND aar = ?

Dvs. jeg vil helst gerne sorterer via maaned og aar. Kan ikke lave om i feltet datetime, idet feltet bruges temmelig mange andre steder på websitet :/



8 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
i din MySQL tabel skal feltet 'date' være fx VARCHAR(40). Du skal derefter indsætte datoer med php funktionen time().
Derfra kan du nemlig bare bruge fx:
date("d", $row['date']);



Her er et test setup du kan lege med.

Tabel setup:
Fold kodeboks ind/udKode 


Og her er SQL til datetime:
Fold kodeboks ind/udKode 


God fornøjelse



Indlæg senest redigeret d. 19.07.2008 01:47 af Bruger #10216
Ret dårligt forklaret.

Udfra datoen 2008-07/18 23:34 - skal jeg kunne benytte det enkeltvis. Altså ligesom date_format %y, %m .. Så jeg kan sortere efter måneder eller år.



Problemet er bare, at jeg har brugt datetime til det resterende site. Jeg syntes jo det var så smart :-)

Kunne man ikke trække/strippe datetime på en eller anden måde - ligesom med time()

$maaned = select.. date_format('dato, %m') as dato

I den dur.. :)



Fold kodeboks ind/udKode 


Erstat '1999-02/12' med din kolonnes navn,
og table med din tabels navn.



Virkede ikke helt, ellers er det mig. Prøver på ny igen imorgen.



Uanset hvordan jeg vender og drejer dit eksempel, så vil den altid udskrive bogstavet S.

Jeg tror det er nemmere at lave om i de 5 filer, mht. time() - også bare gøre det på den rigtige måde fra starten.

Ellers tak for hjælpen.



Jeg fik det faktisk til at virke, efter lidt bøvleri på både php.net og docs.mysql.

Løsning.

day(dato) as dag, month(dato) as maaned.

Virker perfekt, men tak alligevel :-)



t