Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak pobrać rekordy z zakresu dat, ale daty są w Timestamp
Forum PHP.pl > Forum > Bazy danych > MySQL
BatGraf
Cześć

Szukałem najpierw, żeby nie było smile.gif - znalazłem, ale wszystko jest na rekordach, gdzie daty są w formacie DD_MM_RRRR ja mam inaczej, a o co chodzi?

Otóż potrzebuję pobrać z bazy SQL rekordy wg dta. Np w dwóch wersjach:
1. wszystkie rekordy, wg kolumny data rejestracji (registration_date) ale tylko z ostatnich 30 dni
2. jw, ale np tylko z października, września czy maja

Wszystko w sieci jest, jedak nie znalazłem nic przy formacie daty w Timestamp, a tak własnie mam w bazie i musi en format daty zostać

Bardzo Was proszę o pomoc - jak to zrobić smile.gif Bedzie to działać z php, ale chodzi mi głównie o zapytanie do bazy
Z góry bardzo dziękuję

"skrawek" zrzutu z bazy:
borabora
1.
  1. HERE registration_date >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 30 DAY))


2. wrzesien
  1. WHERE registration_date >= UNIX_TIMESTAMP('2014-09-01') AND registration_date < UNIX_TIMESTAMP('2014-10-01')
BatGraf
ojoj , chłopaki biggrin.gif a ja ze trzy godziny marnowałem czas smile.gif
Straszne dzieki, problem rozwiązany.
Kombinowałem co prawda z UNIX_TIMESTAMP ale podstawiałem tylko TIMESTAMP

Jeszcze raz dzieki smile.gif

Cytat
WHERE registration_date >= UNIX_TIMESTAMP('2014-09-01') AND registration_date < UNIX_TIMESTAMP('2014-10-01')]


To jednak nie działa, zmieniałem też na czas UNIX, ale dojdę jakoś. Kierunek mam smile.gif

---
Oki, wiem - niepotrzebny nawias zamykający na końcu:
Cytat
WHERE registration_date >= UNIX_TIMESTAMP('2014-09-01') AND registration_date < UNIX_TIMESTAMP('2014-10-01')
borabora
na koncu wkleiła mi sie klamra ]
juz poprawilem, spróbuj
mmmmmmm
Tyle, że between to odpowiednik =< >=, a nie =< >

Tyle, że between to odpowiednik <= >=, a nie <= >
borabora
Cytat(mmmmmmm @ 14.10.2014, 21:58:41 ) *
Tyle, że between to odpowiednik =< >=, a nie =< >

Tyle, że between to odpowiednik <= >=, a nie <= >


wtedy musiałby zamiast '2014 10 01' dać '2014 09 30', to byłoby kłopotliwe, ponieważ miesiące mają różne długości i musiałby je podawać w zapytaniu, a w ten sposób bierze pierwszy dzien kolejnego miesiąca i nie wlicza go do zakresu. dlatego jest tam < a nie <=
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.