Autor | Zpráva | ||
---|---|---|---|
Schmutzka Profil |
#1 · Zasláno: 15. 7. 2009, 14:54:58
Zdravím,
nejspíš na to bude nějaká rychlá funkce, ale teď absolutně netuším, tak se zeptám. Mám tabulku uživatelé a tabulku články. V tabulce články eviduji u každého článku ID jeho autora z tabulky uživatelé. A chci vypsat uživatele dle počtu článků. Něco jako: SELECT * FROM uživatelé ORDER BY "vyskyt(ID uzivatele) v tabulce clanky". ale funkční. To samé i pro sumu, například pokud má článek hodnocení, tak kolik má daný uživatel celkové hodnocení (to pak lomeno počtem na průměrné hodnocení). Děkuji za pomoc. |
||
Kajman_ Profil * |
Bude to skoro stejné, jako příklad ve faq na výpočet počtu komentářů. Jen to pak podle toho seřadíte.
http://diskuse.jakpsatweb.cz/?action=vthread&forum=28&topic=37836 |
||
Taps Profil |
#3 · Zasláno: 15. 7. 2009, 15:39:19
Schmutzka
já bych to udělal nějak takto SELECT u.jmeno_uzivatele as uzivatel,count(c.id_clanku) as pocet FROM uzivatele u left join clanky on u.id=c.id_autora ORDER BY pocet desc group by u.id , |
||
Kajman_ Profil * |
#4 · Zasláno: 15. 7. 2009, 20:16:14
Jen order by bývá za group by a clanky mají mít asi alias c.
|
||
Schmutzka Profil |
#5 · Zasláno: 16. 7. 2009, 02:56:15
Děkuji, chvíli to trvalo, než jsem si to omakal, ale potřebné jednoduché příkazy už ovládám.
Šlo by ještě nějak nenáročně dělat například to průměrné hodnocení? Teď si vypisuji průměrné hodnoty do zvláštní tabulky stats (časem budu generovat jednou za x minut s rostoucí zátěží), což je možná úspornější, jelikož ještě potřebuji do stats věci, které zjistím jen pomocí složité funkce. A do dotazu se tato funkce jistě nevleze. Takže průměrné hodnocení ve shrnutí: tabulka A, sloupec a, najít všechny záznamy v tabulce B kde sloupec b = sloupec a -> pro ty udělat sumu sloupce c z tabulky B a vydělit počtem sčítaných řádků sloupce c. |
||
Kajman_ Profil * |
#6 · Zasláno: 16. 7. 2009, 08:54:38
avg(hodnoceni) prumer, sum(hodnoceni) soucet, count(hodnoceni) pocet |
||
Časová prodleva: 15 let
|
0