Autor | Zpráva | ||
---|---|---|---|
gardener Profil |
#1 · Zasláno: 13. 4. 2010, 11:58:35 · Upravil/a: gardener
Zdravím, mám jeden dotaz:
Tímto query vybírám uživate kteří mají největší počet bodu v tabulce tb_points a seřadím je. SELECT COUNT( point ) point, user_id FROM tb_points JOIN tb_users ON tb_points.user_id = tb_users.ID WHERE tb_points.user_id = tb_users.ID GROUP BY user_id ORDER BY point DESC LIMIT 0 , 30 Potřeboval bych ale ještě získat všechny, nebo vybrané sloupce z tabulky tb_users KDE plati podminka tb_points.user_id = tb_users.ID Tusim, ze by to mohlo jit jeste nadrazenym selectem ale nevim, jak jej spravne zapsat.. Diky za kazdou radu. |
||
Kajman_ Profil * |
#2 · Zasláno: 13. 4. 2010, 12:53:59
SELECT COUNT( point ) point, user_id, tb_users.* FROM tb_points JOIN tb_users ON tb_points.user_id = tb_users.ID WHERE tb_points.user_id = tb_users.ID GROUP BY user_id ORDER BY point DESC LIMIT 0 , 30 |
||
gardener Profil |
#3 · Zasláno: 13. 4. 2010, 14:01:39
Aha. děkuju za radu a ještě, jak by se postupovalo, pokud bych chtěl takto Joinem napojit tabulek více, například tabulku budliště kde users.address_id = address.ID ?
|
||
mattyZEM Profil |
#4 · Zasláno: 13. 4. 2010, 14:15:15
Úplně stejně jak u prvního JOINu
|
||
gardener Profil |
#5 · Zasláno: 13. 4. 2010, 17:28:20
Zkusil jsem to tedy takto:
SELECT COUNT( point ) point, user_id, tb_users . *,tb_addresses . * FROM tb_points JOIN tb_addresses ON tb_users.address_id = tb_addresses.ID JOIN tb_users ON tb_points.user_id = tb_users.ID WHERE tb_points.user_id = tb_users.ID GROUP BY user_id ORDER BY point DESC LIMIT 0 , 30 Ale dostavam hlasku: #1054 - Unknown column 'tb_users.address_id' in 'on clause' pritom ale sloupec v tabulce existuje. |
||
mattyZEM Profil |
#6 · Zasláno: 13. 4. 2010, 20:00:26
tb_users musíš JOINout dřív.
|
||
gardener Profil |
#7 · Zasláno: 13. 4. 2010, 22:35:55
Aha, nedoslo mi, ze zalezi na poradi, diky za vysvetleni.
|
||
Kajman_ Profil * |
#8 · Zasláno: 13. 4. 2010, 22:39:59
např.
FROM tb_addresses JOIN tb_points ON tb_users.address_id = tb_addresses.ID JOIN tb_users ON tb_points.user_id = tb_users.ID by mělo fungovat pro verze před verzí 5 i po ní. |
||
Časová prodleva: 14 let
|
0