12. januar 2008 - 17:22Der er
23 kommentarer og 1 løsning
Hente data ud fra MySQL, som er gemt i f.eks. Marts og Oktober
Hej Eksperter,
Jeg vil gerne hente data ud fra min MySQl, som er gemt i nogle bestemte måneder, samt vise en liste over hvilke måneder der er gemt data i. Hvordan gør jeg lige det?
Min kode til at hente data ser sådan ud:
$result = mysql_query("SELECT Ref_ID, COUNT(*) AS antal FROM brugere WHERE Ref_ID != '' and Aktiv='1' GROUP BY Ref_ID ORDER BY antal DESC") or die(mysql_error());
Databasen holder ikke selv styr på hvornår en række er blevet tilføget til en tabel. Derfor er du selv nødt til at have et datafelt i tabellen som angiver hvornår ækken blev tilføjet.
Ok, du skrev så bare 'id' i stedet for 'tid' første gang - så jeg blev en smule forvirret. Men du har stadig ikke fortalt hvad det er for en data-type dette felt er blevet oprettet med?
Jeg gætter dog på at du i virkeligheden snakker om et timestamp fra PHP, og de ser sådan her ud:
1196440219
Med mindre at du vitterligt har brug for PHP-versionen i din kode, ville jeg selv overveje at skifte til at bruge MySQL versionen. Det er jo den der svarer mest til det du ønsker at kunne gøre i følge dette spørgsmål.
Du kan dog fortsætte med den nuværende version, men så belaster du faktisk databasen mere end du ellers havde behøvet:
SELECT * FROM dinTabel WHERE month( FROM_UNIXTIME( ditTimestampFelt ) ) = 3 OR month( FROM_UNIXTIME( ditTimestampFelt ) ) = 10
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.