Autor | Zpráva | ||
---|---|---|---|
Anonym Profil |
#1 · Zasláno: 3. 3. 2013, 10:21:19
Dobrý den, chtěl jsem se zeptat, jak by vypadal dotaz když mám tabulku uživatelé, chci je všechny vypsat, ale zároveň mám jinou tabulku s body (datum, komu_bod, od_koho) a uživatele bych chtěl vypsat tak aby kdo má nejvíce záznamů v tabulce body byl první atd. Předem děkuji za odpověď. :)
|
||
juriad Profil |
#2 · Zasláno: 3. 3. 2013, 10:31:38
SELECT uzivatele.*, COUNT(od_koho) as pocet FROM uzivatele JOIN body ON uzivatele.id = body.komu_bod GROUP BY uzivatele.id ORDER BY pocet DESC za předpokladu, že jeden uživatel nemůže dát stejnému uživateli víc bodů, jinak: COUNT(*)
|
||
Anonym Profil |
juriad:
Děkuji, ale pořád tu mám problém, že mi to vypisuje jen jeden záznam, a ne všechny uživatele. Jen ten, u kterýho je bod. |
||
juriad Profil |
#4 · Zasláno: 3. 3. 2013, 10:43:28
jeden záznam může vypisovat jen v následujících situacích:
1) existuje jen jeden uživatel 2) všichni uživatelé mají stejné id 3) máš chybu ve výpisu tabulky ukaž relevantní kus kódu (dotaz do db a smyčku výpisu tabulky) |
||
Anonym Profil |
juriad:
Přidal jsem do toho tvého dotazu LEFT JOIN místo JOIN a funguje to :) Díky :) |
||
juriad Profil |
#6 · Zasláno: 3. 3. 2013, 11:08:48
jasně, uživatel nemusel mít přidělené žádné body; za to omlouvám
|
||
Anonym Profil |
#7 · Zasláno: 3. 3. 2013, 11:25:59
juriad
Jinak ale moc děkuji, lepší než kdybych se tu s tím nějak mořil :) |
||
Časová prodleva: 11 let
|
0