【问题标题】:Inner Join subquery in Postgresql results in errorPostgresql中的Inner Join子查询导致错误
【发布时间】:2019-02-03 23:46:45
【问题描述】:

我要求在我的网站上查找实际情况,我在此请求中遇到错误,我不知道我需要做什么来解决此错误

错误:

列“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

【问题讨论】:

    标签: postgresql count subquery sql-order-by inner-join


    【解决方案1】:

    我认为你的选择语句有问题

    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
    

    所以我尝试查询并与您进行类似的操作,但我没有任何错误要显示。

    首先为什么会出现错误分组?你尝试另一个查询吗?不是这个查询?

    【讨论】:

    • 是你的坦克
    猜你喜欢
    • 1970-01-01
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多