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

标签 mysql sql

如何在别名列上计算聚合函数 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 alias) 包装您重复使用的别名:

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 

关于mysql - 如何计算别名列上的聚合函数 SUM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14217944/

相关文章:

php - 使用 PHP 和 SQL 对调查问卷数据进行排序

mysql - 将csv文件导入mysql数据库

MySQL 日期匹配错误?

php - 如何使用 shell_exec php 创建 MySql 数据库?

java - 使用具有特殊情况顺序的 SQLite 查询方法

MySQL 条件选择

mysql - 无法弄清楚我错过了什么?

php - 按最后一个值对 MySQL 结果排序

sql - 如何在 PostgreSQL8 上使用临时序列和 SELECT 创建 sql 函数

sql - 在 MySQL 中加入两个相似的表