<? for($x=1; $x<=900; $x++){ $srednia[$x] = round(mysql_result(mysql_query('SELECT AVG(job_wynagordzenie) FROM portal_job WHERE job_miasto ='.$x),0)); } $obrot=1; foreach($srednia as $klucz => $wartosc): echo '<b>'.$obrot.'.</b> <a href="#">'.$tb_miasto[$klucz].'<br />Średni zarobek '.$wartosc.'pln</a><br />'; $obrot++;if($obrot==7)break; endforeach; ?>
Chciałbym całe te obliczenia przezuzcić na zapytanie żeby nie kręcić tą pętlą 900razy, bo i tak chodzi mi o wyciągnięcie tylko 6 największych job_miasto i wyciągnięcia z niej średniej....
Teraz wyciągam średnią wszystkich miast po kolei sortuje w php i wyswietlam tylko te 6 największych, ale muszę tą pętlą właśnie pokręcić 900razy żeby wyciągnąć te dane do php i w nim posortować, myśle że w MYSQL można by to jakoś załatwić. Kombinowałem coś takiego:
Wiem, wiem bez sensu bo warunek WHERE, to tak jak by go nie było i wyciąga średnią z wszystkich miast a nie danego miasta, ale nie mam właśnie pomysłu jak to złożyć
SELECT job_miasto, AVG(job_wynagordzenie) FROM portal_job WHERE job_miasto ORDER BY AVG(job_wynagordzenie) DESC LIMIT 6