Autor Zpráva
aladin
Profil *
zdravím,
chci se zeptat,jestli jde udělat trošku složitější podmínka v query mysql..
jelikož mám v mysql sloupci časy,
a potřeboval bych vypsat počet řádků který jsou starší max 1600
v podmíce to je takto
if(time() - $row['time'] > 1500)
ale jak bych to měl dosadit přímo do dotazu?
nebo jde i jiným způsobem než mysql_num_rows zjistit počet řádků?
díky za odpověd
abc
Profil
$pocet = mysql_result(mysql_query("SELECT COUNT(*) FROM tabulka WHERE cas < 1600"),0);
aladin
Profil *
abc:
pořád to nejde..měl by tam být jen jeden záznam,a ukazuje to 5 záznamů...
v db mám tyto záznamy
1 čas : 1366460215
2 čas : 1366454932
3 čas : 1366452976
4 čas : 1366455330
5 čas : 1366453008
6 čas : 0
tyto časy jsou v INT
a podle všeho by to mělo ukázat pouze ten první záznam,jelikož má jakoby aktualní čas...
abc
Profil
ukazuje to 5 záznamů
evidentně posíláš do DB jiný dotaz, než jsem psal, jelikož SELECT COUNT(*)... vrátí jeden řádek s počtem řádků..
Chceš tedy počet výsledků, které nejsou starší než 1600s? Nebo chceš ty výsledky?
aladin
Profil *
nene,jako ukázalo to správně, že to ukázalo 5 ovlivněných výsledků..
ale potřebuju aby to ukázalo všechny záznamy,který jsou nejnovější..
a ty který jsou starší víc jak 1600s tak to bude ignorovat..
prostě,dám příklad..
momentálně tam je počet 0
příjdu na stránku,zapíše se do db nový čas pro můj učet.
a už by to mělo ukázat 1 jako že jsem přišel
a pokud tam budu více jak 1600s neaktivní (nebude se zapisovat čas) tak by to tam nemělo ukázat.
abc
Profil
V tom případě:
$od = now() - 1600;
$pocet = mysql_result(mysql_query("SELECT COUNT(*) FROM tabulka WHERE cas > $od"),0);
aladin
Profil *
abc:
now() funkce psalo že jí nezná,tak jsem tam dal time() a nejspíš to fakčí :)
pcmanik
Profil
aladin:
Používaj na ukladanie dát správne stĺpce, na ukladanie času rozhodne neslúži int, ale v tvojom prípade zrejme využiješ stĺpec typu timestamp, resp. datetime.

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: