Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Czas w Mysql
Forum PHP.pl > Forum > Przedszkole
tomek85
Witam, chciałbym w zapytaniu pobierac tylko date które jest wiekszy od daty dzisiejszej, ale i rowniez moze byc datą wczorajszą
Mam takie zapytanie:

  1. $zapytanie = "
  2. SELECT od, do, data
  3. FROM wyjatki
  4. WHERE id_katalog = $get_firma
  5. ORDER BY data
  6. LIMIT 3
  7.  
  8. ";


Wiem, że istnieją takie funkcje jak Curdate

chodzi o coś takiego WHERE data >= NOW()
to działa, ale działbym jeszcze wczorajszą datę pobrac jak to zrobic?

Pozdrawiam
tomm
czyli musisz zrobić coś takiego
WHERE data >= dzien_wczorajszy
a dzień wczorajszy to dzień dzisiejszy - 1
do operacji na datach możesz zastosować wbudowaną funkcję mysql-a
DATE_SUB
http://dev.mysql.com/doc/refman/5.0/en/dat...nction_date-add
jmail
jeszcze pytanie czy pole w kolumnie jest typu date czy typu timestamp. jeżeli to drugie to masz przykład konkretny:

  1.  
  2. SELECT DATE_FORMAT(TIMESTAMPADD(DAY,-1,now()), '%Y-%m-%d');
  3.  


i masz wczorajszą datę
tomek85
Pole typu date tak więc robię jak radził tomm ale dostaje blad:

  1. SELECT od, do, DATA
  2. FROM wyjatki
  3. WHERE id_katalog = $get_firma AND DATA >= DATE_SUB(NOW(), INTERVAL -1 DAY)
  4. ORDER BY DATA
  5. LIMIT 3


ale wyniki nie takie jak trza , czemu?
jmail
zamień date sub na date add
tomm
nie napisałeś jaki błąd
jeśli błędna dane to owszem bo odejmujesz -1 czyli dodajesz 1: -(-1)
wynik równy lub większy od dnia jutrzejszego
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.