Autor Zpráva
Frisco
Profil *
Ahoj, mám tohle...
mysql> select ID_zadani, procenta from procenta_table order by ID_zadani;
+---------------+----------+
| ID_zadani | procenta |
+---------------+----------+
| 2 | 90 |
| 3 | 100 |
| 5 | 100 |
| 8 | 99 |
| 8 | 100 |
| 17 | 100 |
| 20 | 100 |
| 22 | 44 |
| 22 | 70 |
| 23 | 10 |
| 24 | 100 |
| 24 | 20 |
| 24 | 80 |
| 24 | 100 |
| 24 | 84 |
| 26 | 48 |
| 28 | 11 |
| 30 | 75 |
| 30 | 25 |
| 31 | 62 |
| 32 | 66 |
| 32 | 58 |
+---------------+----------+

A teď ... potřebuju udělat aritmetický průměr pro 10 nejlepších ID_zadani. Já už den a půl nevim jak s tim hnout. ID_zadani - jsou IDčka ke kterým náleží procenta a procenta jsou přidělená procenta. Každej řádek představuje jedno zadání procent od jednoho uživatele. A teď já potřebuju příkaz co udělá aritmetický průměr pro každý vlastní konkrétní ID_zadani a vypsat 10 nejlepších.

našel jsem tohle :

select AVG(procenta) from procenta_table;
+---------------+
| AVG(procenta) |
+---------------+
| 70.0909 |
+---------------+

To udělá aritmitický průměr všech hodnot ve sloupečku procenta, ale já to jak jsem psal potřebuju pro každou hodnotu. To nevim jak tam na to našroubovat. Díky za pomoc.
mimochodec
Profil
select ID_zadani, AVG(procenta) from procenta_table GROUP BY ID_zadani
(doufám, že tak)
Kajman
Profil
Mírná úrava včetně řazení

SELECT id_zadani,
       Avg(procenta) prumer
FROM   procenta_table
GROUP  BY id_zadani
ORDER  BY prumer DESC
LIMIT  10
Frisco
Profil *
Jooo :o) to je ono. Děkuju moc. Takže GROUP BY ... s tím se asi seznám. Ještě jednou děkuju.


Kajman:
Děkuju, taktéž... to už jsem následně zvládnul. Jste hodní. Mám to vyřešené

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0