小编use*_*441的帖子

如何在子查询结果上使用MAX()?

我是Oracle和SQL世界的新手.对于我的生活中我无法弄清楚的查询有一个小问题,我花了几个小时尝试不同的方法,我无法得到我期望的结果.所以继承我的查询:

SELECT *
from(Select membership.mem_desc,membership.mem_max_rentals,membership_history.mem_type,      
    count(membership_history.MEM_TYPE) as membership_count
    from membership_history
    JOIN membership ON membership.mem_type = membership_history.mem_type
    group by (membership_history.mem_type,membership.mem_desc,membership.mem_max_rentals)
    ) g
WHERE g.membership_count = (select MAX(membership_count) from g); 
Run Code Online (Sandbox Code Playgroud)

因此内部查询完美地工作并返回两个结果.现在我有这两个值,我试图弄清楚如何返回具有membership_count最大值的行,这是我一直卡住的地方.在上面的查询中,我尝试在where子句中使用MAX()但在select中我不断得到错误'table not found'(意思是'g').所以我的问题是如何在子查询的结果上使用MAX()函数?任何想法或建议将不胜感激!!!!!

sql oracle subquery max aggregate-functions

15
推荐指数
2
解决办法
7万
查看次数

标签 统计

aggregate-functions ×1

max ×1

oracle ×1

sql ×1

subquery ×1