Postgresql中的Inner Join子查询导致错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Postgresql中的Inner Join子查询导致错误相关的知识,希望对你有一定的参考价值。
有我的要求在我的网站上找到现实,我在这个请求中得到错误,我不知道我需要做什么来解决这个错误
错误:
列“quote_plus_normal_gr_publi.id_post_normal”必须出现在GROUP BY子句中或用于聚合乐趣
查询:
SELECT
publi.date, publi.mess, publi, publi.profil, publi.color,
publi.name, publi.search
FROM
publi
INNER JOIN
(SELECT
id_post_normal, COUNT(id_post_normal)
FROM
quote_plus_normal_gr_publi
ORDER BY
id_post_normal) q ON q.id_post_normal = publi.id_post_normal
WHERE
publi.id_personnes = 1
ORDER BY
date DESC
答案
我觉得你的select语句有问题
SELECT publi.date, publi.mess, publi, publi.profil, publi.color, publi.name, publi.search
FROM publi
INNER JOIN (
SELECT id_post_normal, COUNT(id_post_normal)
FROM quote_plus_normal_gr_publi
ORDER BY id_post_normal
) q
ON q.id_post_normal = publi.id_post_normal
WHERE publi.id_personnes = 1
ORDER BY date DESC
在第一个选择中只有publi并且没有要调用的列
select publi.date, publi.mess, publi, publi.profil
所以我尝试查询并使类似于你,我没有任何错误显示。
首先为什么错误出现组?你试试另一个查询?不是这个查询?
以上是关于Postgresql中的Inner Join子查询导致错误的主要内容,如果未能解决你的问题,请参考以下文章
INEXISTS的相关子查询用INNER JOIN 代替--性能优化