sql:找到每个分支机构的最低贷款额

时间:2016-10-08 16:23:14

标签: sql oracle subquery aggregate-functions

这个问题意味着什么?我很迷惑 。是否要找到最低金额或金额最低的分支机构名称。帮我解决这个问题。

My_query(找到最低金额):

select min(total_amount) 
from (select branch_name ,sum(amount) as total_amount 
       from loan group by branch_name );

谢谢!

2 个答案:

答案 0 :(得分:4)

我认为问题是要求在每个分支机构提供最小的贷款。在这种情况下,您可以使用以下查询:

SELECT branch_name,
       MIN(amount) as smallest_loan
FROM loan
GROUP BY branch_name

答案 1 :(得分:2)

此解决方案将考虑每个分支机构的贷款总额,并选择总分最少的一个(显示分支名称和总金额最少)。假设最后一个地方没有“联系”;如果有,它只按字母顺序显示第一个。

select  min(branch_name) keep(dense_rank first over sum(amount)) as branch_name,
        min(sum(amount)) as least_total_loan_amount
from   loan
group by branch_name;

如果您只需要最小金额(但不是银行名称),则只需删除第一列(从min(branch...as branch_name,的所有内容,包括逗号)。