Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pomoc w zapytaniu mysql
inwob
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 2.05.2010

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


Witam!
Potrzebuje mniej więcej takiego zapytania:
  1. SELECT AVG(`level`),`guilds`.`id` as `id` FROM `players`,`guilds` WHERE `players`.`rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = 500) and `guilds`.`id` = 500

Lecz niestety ono nie dziala
  1. Dokumentacja
  2. #1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause

Niestety znam tylko podstawy mysql.
Próbowałem z join ale mi nie wychodziło.
Pozdrawiam!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


1. Nie pobiera się danych w sposób select from tabela1, tabela2, tabela3 - to zwraca kombinacje tych tabel, poczytaj o JOIN
2. By użyć funkcji agregujących dane muszą być pogrupowane, poczytaj o GROUP BY
Go to the top of the page
+Quote Post
wookieb
post
Post #3





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




  1. SELECT AVG(`level`),`guilds`.`id` AS `id` FROM `players`,`guilds` WHERE `players`.`rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = 500) AND `guilds`.`id` = 500 GROUP BY guilds.id

Naucz się używam JOIN-ów
Go to the top of the page
+Quote Post
inwob
post
Post #4





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 2.05.2010

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


Dzięki (IMG:style_emoticons/default/wink.gif)
Biorę się za czytanie o join.
Go to the top of the page
+Quote Post

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: 22.08.2025 - 19:56