Autor Zpráva
Pavel W.
Profil *
Mám tabulku ipecka, ktera obsahuje sloupce:
id
pcip - ip adresa, podstatné je, že se mohou opakovat!
from_server - id serveru (hodnoty jen 1, 2 nebo 3)
sf1970 - čas ve formátu co vrací php funkce time() (počet sekund od 1.1.1970)

a dotaz
SELECT server.id, count(IF(ipecka.sf1970>1218652481, 1, NULL)) AS pocet, count(ipecka.id) FROM ipecka JOIN server ON ipecka.from_server=server.id GROUP BY server.id


ten mi funguje správně a vrací id, počet záznamů v určitém období (není podstatné jakém), a celkový počet záznamů
A můj neřešitelný problém spočívá v tom, že bych chtěl nějak zredukovat ip adresy (pcip) aby v případě, že jsou v tabulkce třeba 4 stejné se to počítalo v druhém sloupci vráceném dotazem (pocet) jako 1 a ne 4 jak je tomu teď.
Něco jako DISTINCT, který mi na to nefunguje.
Nevím pořádně jak tento problém pojmenovat a tak se mi na internetu špatně hledá řešení tak prosím omluvte, jeteli už se něco podobného někde řešilo.
Kajman_
Profil *
count(distinct IF(ipecka.sf1970>1218652481, ipecka.pcip, NULL))
count(distict ipecka.pcip)

ale osobně bych tu podmínku na datum dával do where.
Kajman_
Profil *
count(distinct ipecka.pcip)
Pavel W.
Profil *
Funguje to skvěle díky... netušil jsem že můžu dát distinct jinam než přímo za select
Toto téma je uzamčeno. Odpověď nelze zaslat.

0