![]() |
![]() |
![]()
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 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 31 Pomógł: 1 Dołączył: 17.03.2006 Ostrzeżenie: (0%) ![]() ![]() |
select (o.ocena/o.glosow) ocena_srednia, f.* from oceny o, filmy f where o.id_what=f.id and f.stat=1 and f.dstat=1 order by ocena_srednia desc
tzn zakladam ze jeden rekord w tabeli oceny jest dla jednego filmu to bylo by chyba tak:
z jego struktury tabeli raczej bym wnioskowal ze tabela ocen odnosi sie ogolnie do ocen np: ocen ksiazek dlatego ma tam wstawiona kolumne "what" w takim wypadku left join zle zadziala bo nie wszystkie oceny beda odnosily sie do filmow i wskocza do wynikow null'e Ten post edytował blawat 29.03.2010, 21:48:08 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 14:20 |