Záznamy s dnešním datem
9 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Jak můžu nejjednodušeji zapsat podmínku v MySQL dotazu tak, aby vyhověly záznamy mající v jistém sloupci typu DATETIME právě dnešní datum? POZOR - jedná se o mysql 4.0.27, kde ještě není funkce DATE, takže nefunguje následující zápis: WHERE DATE(datum)=CURDATE() Funguje mi následující kód, ale připadá mi trochu komplikovaný, nepřehlédnul jsem nějakou jinou možnost jak to udělat? YEAR(datum)=YEAR(NOW()) AND MONTH(datum)=MONTH(NOW()) AND DAYOFMONTH(datum)=DAYOFMONTH(NOW())
-
já v mysql ukládám čas pomocí fce time();
-
...potom si to snadno ověřís pomocí date('j', $cas_z_databaze) - vypíše den
-
...potom ovsem musis podminku kontrolovat az v php, coz neni uplne koser. Co takhle: ... WHERE datum >= CURDATE() - curdate by melo fungovat, a to porovnani by pak melo vybrat sloupce s datem vetsim nebo rovnym "dnes v 0:00:00"
-
Ja taky pouzivam fce Time(). Pro filtrovani pak pouzivam dolni pripadne horni hranici (WHERE datum >= zacatek and datum <= konec). Kde zacatek a konec predtim vygeneruji pomoci mktime.
-
Jde o to, kde se generuje hodnota sloupce `datum` - nastaveni casu v php a v sql databazi muze byt obecne jine - od nepresnosti v radu sekund az po hodiny, pokud php a sql servery obyvaji ruzne casove zony. Takze je vhodne porovnavat s hodnotou danou stejnym serverem (php vs sql), kde se generuji porovnavane atributy.
-
Já jsem taky dosud používal pro ukládání data a času v mysql normální int formát a s daty jsem pracoval v unix stamp formátu. Ale teď jsem z různých důvodů (výhody jsou a jsou nesporné) použil formát datetime a tak byla stavěna otázka. Neptal jsem se jestli by nebylo lepší použít unixstamp.
-
V tom pripade doporucuju co jsem psal ja ;P
-
Dík, to datum >= CURDATE() mě nenapadlo, zkusím jestli to funguje.