Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wybranie danych z tabeli i posortowanie ich według wartości z drugiej tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
Ravik
Witam,

Mam taki problem:

Zapytanie wybiera mi dane obrazków z tabeli pictures i wygląda ono tak (:

  1. SELECT * FROM pictures;


Poniższe zapytanie wylicza mi średnią dla poszczególnych rekordów i je grupuje na podstawie pid. Moje pytanie pojawia się tutaj: W jaki sposób zrobić tak, aby rekordy w powyższym zapytaniu były sortowane na podstawie wartości "avg" z drugiego zapytania?

Chodzi mi o:


  1. SELECT * FROM pictures ORDER BY avg;


Chciałbym, aby w jakiś sposób podłączyć to drugie zapytanie.

  1. SELECT pid, SUM(vote) AS total, AVG(vote) AS avg, MIN(vote) AS min, MAX(vote) AS max, COUNT(vote) AS num FROM wp_nggv_votes
  2. WHERE pid > 0
  3. GROUP BY pid
  4. ORDER BY avg DESC
  5. LIMIT 0, $limit;



Będę wdzięczny za jakiekolwiek wskazówki.

Pozdrawiam,
Ravik
bpskiba
  1. SELECT pid, SUM(vote) AS total, AVG(vote) AS avg, MIN(vote) AS min, MAX(vote) AS max, COUNT(vote) AS num FROM wp_nggv_votes
  2. WHERE pid > 0
  3. GROUP BY pid
  4. ORDER BY 3 DESC
  5. LIMIT 0, $limit;
Ravik
Niestety to nie pomogło. Takie zapytanie powoduje zduplikowanie tych samych rekordów (wyświetlenie 3 razy tego samego rekordu w przypadku trzech dodanych rekordów na przykład dodam dwa obrazki, to wyświetli mi dwa raz ten sam obrazek).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.