group by子句无效

0h4hbjxa  于 2021-06-15  发布在  Mysql
关注(0)|答案(0)|浏览(140)

我有两张table。现在我有一个问题:

SELECT
    p.date,
    HOUR(start) as startHour,
    (p.material * MIN(r.performance)) as energy
FROM
    PLANNING p
JOIN
    PERFORMANCE r ON p.`objectId` = r.`objectId` AND p.`mold` = r.`mold`
WHERE
    p.date = '2018-12-05'
GROUP BY
    startHour, p.material
ORDER BY
    startHour

显然,这个查询每小时返回多行,因为我有多个objectid和mold对。事实上,我需要每小时有一排能量总和,所以我试着这样做:

SELECT
    p.date,
    HOUR(start) as startHour,
    SUM(p.material * MIN(r.performance)) as energy
FROM
    PLANNING p
JOIN
    PERFORMANCE r on p.`objectId` = r.`objectId` and p.`mold` = r.`mold`
WHERE
    p.date = '2018-12-05'
GROUP BY
    startHour
ORDER BY
    startHour

但我明白了 Invalid use of group function

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题