Autor | Zpráva | ||
---|---|---|---|
Honza__ Profil * |
#1 · Zasláno: 18. 10. 2008, 23:07:04
Dobrý večer, narazil jsem na problém při zobrazování jednoduché statistiky.
Mám mysql tabulku s názvem auta a v ní sloupce id,cena,barva apod. Nás bude zajímat sloupec BARVA. Potřebuji pomocí nějakého SQL dotazu zajistit, aby se vypsalo např.: Černá: 25 aut Šedá: 10 aut Žlutá: 30 aut Modrá: 12 aut ... atd. aniž bych musel pro každou barvu pokládat nový dotaz, děkuji |
||
Alphard Profil |
#2 · Zasláno: 18. 10. 2008, 23:10:11
select barva, count(*) pocet from tabulka group by barva
|
||
Honza__ Profil * |
#3 · Zasláno: 18. 10. 2008, 23:54:27
Promiňte, ale nevím, jak se tento dotaz dá poté využít dále...děkuji
|
||
imploder Profil |
#4 · Zasláno: 18. 10. 2008, 23:58:22
RTFM
|
||
Alphard Profil |
#5 · Zasláno: 19. 10. 2008, 00:18:20
imploder
na otázku WTF odpovíte RTFG? :-) trochu vstřícněji Honza__ brete to jako jakýkoliv jiný dotaz s výběrem 2 sloupců (barva a pocet), ještě doplním název tabulky, zapomněl jsem, že jste ho oznámil select barva, count(*) pocet from auta group by barva můžete si to spustit v phpMyAdminu, konzoli nebo v něčem, co automaticky vypíše výsledky pro lepší pochopení |
||
Honza__ Profil * |
#6 · Zasláno: 19. 10. 2008, 13:33:26
Alphard
Děkuji za objasnění, už to chápu. |
||
Honza__ Profil * |
#7 · Zasláno: 20. 10. 2008, 21:51:18
Měl bych na Vás ještě jeden dotaz...
Výpis typu: Šedá: 10 Modrá: 3 Žlutá: 14 ovšem za číslo bych ještě potřeboval vypsat kolik je to % z celkového množství aut, zkusil jsem do dotazu přidat SUM(count(*)) as `celkem` ovšem to mi hlásí chybu #1111 - Invalid use of group function, takže jsem nejspíš napsal blbost :-). Pomůžete mi? Děkuji |
||
Ssob Profil |
#8 · Zasláno: 21. 10. 2008, 17:02:37
Zkus:
SELECT barva, count(*) AS pocet, count(*) / (SELECT COUNT(*) FROM auta) * 100 AS procent FROM auta GROUP BY barva Předpokládá verzi mysql 5 nebo vyšší. Nevím jak to bude rychlé.. |
||
Časová prodleva: 16 let
|
0