Autor Zpráva
Ondřej Fejtek
Profil
Ahoj, bádám nad jedním sql dotazem, tak neváhám a ptám se vás.
Mám 2 tabulky.
V té první jde o to, že se zaznamenávají řádky kdo kdy koho trefil koulí.
kdo koho kdy
IP1 Už 1 date
IP2 Už1 date

V té druhé jsou uloženi uživatelé včetně počtu celkových bodů.

A já potřebuji zjistit, kdo získal nejvíce bodů za poslední 3 dny.
Tzn. že chci zjistit 10 řádků s hodnotami které se v posledních 3 dnech v tabulce (ve sloupci koho) nejvíce opakovaly.

Ještě uvedu názorný příklad.

Kdo koho Kdy
ip 1 dnes
ip 1 včera
ip 2 před týdnem
ip 3 dnes

=> Teď bych tedy chtěl na prvním místě uživatele s ID 1 ten má 2 body , na druhém uživatele s ID 3 s jedním bodem
Díky
Joker
Profil
Nemají se ty hodnoty opakovat spíš ve sloupci kdo? Jestli jsem to teda pochopil dobře, tak nejvíc hodnot ve sloupci koho nemá ten kdo má nejvíc bodů, ale ten koho nejvíckrát trefili.

edit: aha, tak koukám na ten doplněný příklad. Tak asi to je jinak než jsem myslel. Upravil jsem ten dotaz.

Nástřel:
SELECT koho, count(koho) AS pocet FROM prvnitabulka GROUP BY koho ORDER BY pocet WHERE date > DATE_ADD(CURDATE(), -3)
Ondřej Fejtek
Profil
Díky za odpověď, ale hlásí chybu u:

WHERE date > DATE_ADD(CURDATE(), -3)
Alphard
Profil
zkus změnit pořadí
where ... group by ... order by
Ondřej Fejtek
Profil
Také nejde. Zajímavé je, že ať přidám za where cokoli , vždy to napíše chybu.
Ondřej Fejtek
Profil
Dobrý, vyřešeno, díky.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0