Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kłopotliwe zapytanie
dob
post
Post #1





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 30.01.2003
Skąd: Warszawa

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


Witam, zwaracam się z prośbą o pomoc w ułożeniu kodu SQL

mam 2 tabele
1) Tabela foto która międzyinnymi zawiera id zdjęcia (id), ilość oddanych na to zdjecie głosów (lglosow) oraz ich sumę (suma)
2) Tabela votes która zawiera takie informacje jak id zdjęcia (fotoid) ocene (ile) oraz kto taką ocenę wystawił (who)

Chciałbym wybrać 25 id z tabeli foto których ocena jest najlepsza. Problem w tym że ocene liczę w następujący sposób :
od sumy odejmuje najwyższą i najmniejszą wystawioną ocenę dla tego zdjęcia oraz dziele przez liczbę głosów którą pomniejszam o 2.
Działanie wygląda mniej więcej tak :
Kod
(`suma` - max( ile ) - min( ile )
) / ( `lglosow` -2 )

Oczywiscie 25 wyników chciałbym posortowac od największego do najmniejszego.

I teraz pytanie czy to jest w ogole wykonalne przy takiej konstrukcji tabel (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Ja tego nie potrafie zrobić (w ogole nie bardzo mam pojęcie o mysql (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) )

Za wszelką pomoc serdecznie dziękuje.

[edit]
Oczywiscie do łączenia z bazą wykorzystuje php, może jakies działania na tablicach czy cos....

Ten post edytował dob 12.01.2006, 22:21:41
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
beton
post
Post #2





Grupa: Zarejestrowani
Postów: 13
Pomógł: 2
Dołączył: 5.11.2003
Skąd: Tarnowskie Góry

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


Tak jest to możliwe, daj mi 20 minut no góra godzinke bo jestem teraz troche zajęte i ułoże to zapytanko (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Najlepiej podejślij mi struktury, i jakies przykładowe dane (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Nie lubie pracować "na sucho" (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

  1. SELECT f.id,((sum(v.ile) - (max(v.ile) + min(v.ile)) ) / (f.lglosow-2)) AS c
  2. FROM foto f,votes v WHERE v.fotoid=f.id GROUP BY f.id ORDER BY c DESC LIMIT 25


Powinno działac, jak chodzi coś nie tak wyslij strukturki i przykladowe dane (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował beton 12.01.2006, 23:37:33
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: 27.12.2025 - 02:29