cascaMedlem sedan feb. 20005 891 inlägg Har en databas med poster, och tanken är att det ska finnas en sorts kalendergrej, men jag har noll koll på date(); och liknande funktioner.. Nån som orkar hjälpa? :)
Tabellen består av ett antal fält, varav ett innehåller ett datum i formen YYYY-MM-DD.
-
Hur plockar jag ut alla poster med dagens datum + de kommande? (Dvs ignorera gamla poster.)
-
Hur gör jag en "arkiv-funktion" som t.ex plockar ut alla poster från förra månaden?
Djupt tacksam för all ev. hjälp. Deadlinen kryper sig närmre.
aasahMedlem sedan mars 20034 471 inlägg
casca skrev:
Har en databas med poster, och tanken är att det ska finnas en sorts kalendergrej, men jag har noll koll på date(); och liknande funktioner.. Nån som orkar hjälpa? :)
Tabellen består av ett antal fält, varav ett innehåller ett datum i formen YYYY-MM-DD.
Se till att ge datumfälten typen DATE i databasen. Då kan du använda SQLs funktioner för att få ut det du vill.
1) Hur plockar jag ut alla poster med dagens datum + de kommande? (Dvs ignorera gamla poster.)
$today = date('Y-m-d');
$sql = "SELECT * FROM Tabell WHERE DatumKol >= '$today'";
tydalMedlem sedan juni 20034 013 inlägg http://dev.mysql.com/doc/refman/4.1/en/date-and-time-functions.html
1. SELECT * FROM din_tabell WHERE datum >= CURDATE()
2. Finns väl flera sätt, men det här funkar:
SELECT * FROM din_taball WHERE datum >= CONCAT(EXTRACT(year_month FROM DATE_SUB(CURDATE(), INTERVAL 1 month)), '01') AND datum < DATE_ADD(CONCAT(EXTRACT(year_month FROM DATE_SUB(CURDATE(), INTERVAL 1 month)), '01'), INTERVAL 1 month)
Enklare sätt kan finnas eftersom jag inte använt Mysql:s datumfunktioner tidigare :-)
cascaMedlem sedan feb. 20005 891 inlägg Oh, sweet :) Två svar efter 18 minuter. 00:01 på en tisdag. Världsklass! :D
Tackar och bockar. Till bägge två, men jag får bara markera ett inlägg. :( ;)