如何计算别名列上的聚合函数SUM?

SELECT a.question_id,
       a.level,
       Count(a.question_id) AS rank,
       Sum(rank)        AS total
FROM   logs AS a,
       question AS b
WHERE  a.question_id = b.q_id
       AND a.level = '2'
GROUP  BY a.question_id
ORDER  BY rank DESC

最佳答案

只需使用(SELECT别名)包装您的重用别名:

SELECT a.question_id,
       a.level,
       COUNT(a.question_id) AS rank,
       SUM(SELECT(rank)) AS total
FROM   logs AS a,
       question AS b
WHERE  a.question_id = b.q_id
       AND a.level = '2'
GROUP  BY a.question_id
ORDER  BY rank DESC

10-06 04:11
查看更多