Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Select tylko konkretny miesiąc
Forum PHP.pl > Forum > Przedszkole
robos85
W bazie trzymam datę jako DATETIME.
W select chciałbym pobrać z bazy wszystkie rekordy np z 09-2009.

Jest jakaś funkcja mysql, którą można do tego uzyć?
bogdan89
jest taka...
Kod
MONTH()


np.:
Kod
SELECT * FROM table_name WHERE MONTH(date_column) = 4;
robos85
podziękował smile.gif
phpion
Możliwe, że szybciej w tym przypadku zadziała po prostu zwykły LIKE (o ile masz indeks na kolumnie). Wystarczyłoby zrobić:
  1. SELECT * FROM table_name WHERE date_column LIKE '2009-09-__';

Tam są 2 znaki "_", które oznaczają dowolny jeden znak (czyli __ = dowolne 2 znaki). Nie wiem czy wykorzystanie MONTH() pozwoli na użycie indeksu (strzelam, że nie) dlatego w tym przypadku LIKe może okazać się szybszy. Nie zmienia to faktu, że wykorzystanie MONTH() jest bardziej logiczne smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.