4

PostgreSQL でこのクエリを実行しているときに、このエラーが発生しました。

SQLSTATE[42803]: グループ化エラー: 7 エラー: 列 "posts.title" は GROUP BY 句に表示されるか、集計関数で使用する必要があります
行 1: SELECT DISTINCT posts.id, posts.* FROM "posts" GROUP BY "pos..

これは私のクエリです:

SELECT DISTINCT posts.id, posts.* 
FROM "posts" 
GROUP BY "posts"."id" 
ORDER BY "posts"."id" DESC 
LIMIT 20 OFFSET 0

mysqlで実行したときはうまくいきましたが、どうすれば修正できますか?

4

2 に答える 2

4

問題は、PostgreSQL では、select に含めるすべての列を group by に追加する必要があることです。

だからあなたの声明は次のようになるはずです

SELECT * FROM table GROUP BY column1, column2...
于 2013-04-15T10:23:39.563 に答える