Autor Zpráva
gardener
Profil
Ahoj,
chtěl bych se zeptat, jak je možné porovnat dva datumy za pomocí MySQL?
Mám dotaz, který by měl vrátit záznam v případě, že datum ve sloupci date_of_rating je starší než rok:
("SELECT * FROM tb_ratings 
WHERE company_id=$companyId AND user_id=$userId AND date_of_rating < NOW()");


Takže jestli jde nějakým způsobem přičíst ke sloupci date_of_rating + 1Year a nebo od NOW rok odečíst?

Díky za každou radu.
Keeehi
Profil

SELECT * FROM tb_ratings 
WHERE company_id=$companyId AND user_id=$userId AND DATE_ADD(date_of_rating, INTERVAL 1 YEAR) < NOW()
Kajman_
Profil *
subdate(now(), interval 1 year)

Ale je lepší si to datum předpočítat např. v php, ať nepřijdete o možnost mysql cache.
Kajman_
Profil *
Keeehi:
Pozor na výkon, vždy je lepší porovnávat nezměněný sloupeček s jedním konstatním výpočtem než pro každý řádek přičítat jeden rok!
gardener
Profil
O.K díky, o funkci DATE_ADD jsem netušil, databáze nebude tak velká, výkon zde není prioritní..

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0