Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] Zapytanie
styryl
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 27
Dołączył: 16.04.2008
Skąd: Bakutilu

Ostrzeżenie: (0%)
-----


Witam mam oto taki problem:

mam 2 tabele

1. Oceny

id ocena glosow what id_what

2. Filmy

id title tresc kat date stat dstat act opened id_user

Chce teraz wyciągnąć najwyżej ocenione filmy przy czym uwzględniając z tabeli filmy stat = 1 i dstat = 1

Ocena jest wyliczana tak:

$ocena_ = $ocena_ / $glosow_;
$ocena_ = round ($ocena_ , 1);

Czyli dziele sume ocen z kolumny oceny przez ilość oddanych głosów z kolumny glosow

Nie mam pomysłu jak to zrobić proszę o pomoc.

Pzdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
djbarca
post
Post #2





Grupa: Zarejestrowani
Postów: 231
Pomógł: 1
Dołączył: 22.04.2007
Skąd: Rypin

Ostrzeżenie: (0%)
-----


tzn zakladam ze jeden rekord w tabeli oceny jest dla jednego filmu to bylo by chyba tak:

  1. $rekord = mysql_query("SELECT f.title,o.ocena,o.glosow,(o.ocena/o.glosow) as wynik
  2. FROM filmy f LEFT JOIN oceny o ON o.id_what = f.id WHERE f.what='filmy' && f.stat='1' && f.dstat='1' ORDER BY wynik DESC LIMIT 10");


i teraz np wykorzystanie
  1. while ($re = mysql_fetch_array($rekord))
  2. {
  3. echo "Tytul filmu: {$re[0]} ma ocene: {$re[1]} i glosow {$re[2]} wynik = ".round($re[3],1)."<br/>";
  4. }


Ten post edytował djbarca 29.03.2010, 21:38:14
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 07:20