[英]pgSQL query error
我嘗試使用此查詢:
“SELECT * FROM guests WHERE event_id =”。$ id。“GROUP BY member_id;”
我收到這個錯誤:
錯誤:列“guests.id”必須出現在GROUP BY子句中或用於聚合函數
任何人都可以解釋我如何解決這個問題?
您不能在不讓Select知道要采取什么以及如何分組的情況下進行分組。
嘗試
SELECT guests.member_id FROM guests WHERE event_id=".$id." GROUP BY member_id;
如果您需要從此表中獲取有關來賓的更多信息,則需要將其添加到“分組依據”中。
另外,看起來您的選擇實際上應該是
SELECT guests.id FROM guests WHERE event_id=".$id." GROUP BY id;
需要專門調出一group by
查詢中使用的每個列(即,不要執行SELECT * FROM ...
),因為您需要在某種聚合函數中使用它們(min / max / sum / avg / count / etc)或成為group by
子句的一部分。
例如:
SELECT instrument, detector, min(date_obs), max(date_obs)
FROM observations
WHERE observatory='SOHO'
GROUP BY instrument, detector;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.