Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie sql AVG()
valkirek
post
Post #1





Grupa: Zarejestrowani
Postów: 117
Pomógł: 6
Dołączył: 24.07.2013

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


Witam. Mam pewien problem z zapytaniem:
  1. $checkPhoto=mysql_query("SELECT a.*,count(b.idPhotos) AS counterComm,c.sex,avg(d.rating) AS average
  2. FROM photos a
  3. LEFT JOIN comments b ON a.idPhoto=b.idPhotos
  4. LEFT JOIN profiles c ON a.idUserPhoto=c.idUser
  5. LEFT JOIN rating d ON a.idPhoto=d.idPhoto
  6. GROUP BY a.idPhoto
  7. ORDER BY a.timePhoto LIMIT 0,10");


I problem jest następujący. Jeżeli mam np. 10 ocen w tabeli rating to tak samo wyświetla mi 10 rekordów z tabeli comments. Myśle nad tym i myślę ale nie mam pomysłu jak te dwie tabele rozdzielić bo niby rozdzielone są:

  1. b ON a.idPhoto=b.idPhotos
  2. d ON a.idPhoto=d.idPhoto


Ale zastanawiam się czy tu nie jest problemem ta sama nazwa indexu w dwóch różnych tabelach?

Z góry dzięki za pomoc.

Ten post edytował valkirek 12.03.2014, 20:25:04
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
valkirek
post
Post #2





Grupa: Zarejestrowani
Postów: 117
Pomógł: 6
Dołączył: 24.07.2013

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


Dzięki Sazian ale kombinuje i nie bardzo mi to wychodzi a z podzapytaniami to nie bardzo miałem doświadczenia. Teraz ciągle mam błąd o braku aliasu average albo mam brak rekordów całkowicie.

Może ktoś podać przykład jak takie zapytanie ma wyglądać?

P.S. Czemu moje rozwiązanie nie może wyświetlić poprawnych wyników?

Więc ktoś pomoże czy nie?

Ten post edytował valkirek 13.03.2014, 21:09:05
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: 13.10.2025 - 18:09