Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 15 Dołączył: 12.08.2012 Skąd: Zabrze Ostrzeżenie: (10%)
|
Witam!
Na localhoście zapytania do PostgreSQL nie zgłaszają żadnych błędów (PostgreSQL 9.1.4). Na serwerze natomiast (PostgreSQL 9.0.7) zgłasza mi taki błąd: Kod n exception has been thrown during the rendering of a template ("SQLSTATE[42803]: Grouping error: 7 BŁĄD: kolumna "c0_.name" musi występować w klauzuli GROUP BY lub być użyta w funkcji agregującej LINE 1: SELECT c0_.id AS id0, c0_.name AS name1, COUNT(i1_.id) AS sc... ^" Wie ktoś może od czego to zależy? Wersja postgresa? Konfiguracja? Generalnie, postgres chce abym dodał klauzulę GROUP BY do każdej kolumny c0.*. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 31 Dołączył: 12.10.2008 Skąd: WAT Ostrzeżenie: (0%)
|
Geralnie skoro robisz COUNT() to musisz bazie powiedzieć w jaki sposób ma postąpić z innymi - powielonymi lub nie kolumnami w selekcie. Czyli max(), min() czy też GROUP BY więc słusznie Ci tu postgres wymusza dorzucenie do grupa pozostałych kolumn. Skopiuj sobie dane z serwera do lokala i wtedy sprawdź czy nic postgres nie krzyczy. Najstarszego postgresa pamiętam jakoś 8.2 i tam Cię na pewno bez group by nie puszczał.
|
|
|
|
pamil Nakaz stosowania GROUP BY dla każdej kolumny 27.08.2012, 22:58:15
vermis Zgodnie ze standardem powinieneś grupować po kolum... 12.09.2012, 22:31:40 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 16:25 |