Autor Zpráva
wordikk
Profil *
Zdravím,

dejme tomu, že máme tabulku statistics s touto strukturou
id
dateTime
device
ip


Jakým SQL dotazem vyberu zařízení (device) a jejich celkový počet pouze pro unikátní IP?
SELECT `device`, COUNT(`id`) AS `count` FROM `statistics` WHERE FROM_UNIXTIME(`dateTime`, "%Y-%m-%d") = "'.date(''.$year.'-'.$month.'-'.$day.'').'" GROUP BY `device`

Následující dotaz mi vrátí správná data, ovšem pro všechny IP - ne pro unikátní.

Děkuji předem.
Alphard
Profil
Takhle?
select device, count(distinct ip) from ...

Funkce from_unixtime aplikovaná na sloupec bude pro velké tabulky zřejmě pomalá. Zvážil bych buď dosazení typu >= a <=, nebo sloupec typu date a přímé porovnání.
wordikk
Profil *
Alphard:
Děkuji za pomoc, funguje. A dám na vaší radu ohledně práce s unix_time, děkuji.

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: