Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie: raz działa a raz nie
camillos
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 26.06.2007

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


Witam, to mój pierwszy post tutaj, choć już od dawna tu zaglądam i sporo się nauczyłem :-)
Jestem początkujący w bazach, więc prosze o wyrozumiałość, właśnie przerabiam skrypt z działającego na plikach na posługujący się bazą. Zetknąłem się z dziwnym problemem, otóż poniższe zapytanie wyświetla wynik zgodny z oczekiwaniami na moim lokalnym komputerze, natomiast po umieszczeniu na serwerze - wywala błąd, a gdy go wpisać w phpAdmina na tym serwerze zwraca błąd
Kod
#1111 - Invalid use of group function

Oto feralne zapytanie.
  1. SELECT `ip`, COUNT(`id`) FROM tablica GROUP BY `ip` ORDER BY COUNT(`id`) DESC

Zgaduję, że to pewnie różnica w wersji mysql (na serwerze jest 4.0.22-standard-log) - czy ktoś mógłby poradzić, jak przerobić to zapytanie, aby zadziałało?
Oczywiści `id` to klucz, `ip` to pole któremu chcę zliczyć ilośc rekordów od największej a tablica to tablica.

Chcę,aby nie tylko wypisało ile rekordów przypada na każde `ip` ale i uporządkowało wyniki od największych.

Ten post edytował camillos 30.06.2007, 18:55:54
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Indeo
post
Post #2





Grupa: Zarejestrowani
Postów: 295
Pomógł: 7
Dołączył: 26.03.2004
Skąd: Opole

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


Wszystko jest dobrze. Jesli uzywasz wyrazenia powinieneś nadać nowym zmiennym nazwy (aliasy). Jak zauważysz w klauzuli WHERE wolno używać tylko nazw istniejących pól w tabeli lub definicji wyrażenia (np. count(ip) ) natomiast w przypadku klauzuli GROUP i HAVING używa się aliasów.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 13:30