You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Oracle SQL Developer中按国家查询最大交易值?

按国家统计最大交易值的SQL解决方案

没问题,这需求很清晰,我们可以通过关联两张表再分组聚合来实现,给你两种不同场景的解决方案:

场景1:保留用户信息,同时按所属国家统计该用户的最大交易值

适合需要看到每个用户对应最大交易的情况,SQL语句如下:

SELECT 
    u.id,
    u.country,
    u.sex,
    MAX(t.value) AS max_transaction_value
FROM 
    users u
JOIN 
    transactions t ON u.id = t.id
GROUP BY 
    u.id, u.country, u.sex
ORDER BY 
    u.id;

执行后得到的结果:

idcountrysexmax_transaction_value
1Germanym20
2Germanyf30
3Francem40

场景2:仅按国家维度统计,取整个国家的最大交易值

如果不需要用户明细,只看国家层面的最大值,可以用这段SQL:

SELECT 
    u.country,
    MAX(t.value) AS max_transaction_value
FROM 
    users u
JOIN 
    transactions t ON u.id = t.id
GROUP BY 
    u.country
ORDER BY 
    u.country;

对应的结果:

countrymax_transaction_value
France40
Germany30

补充说明

  • 这里用JOIN是默认的内连接,只会统计有交易记录的用户/国家;如果要包含没有交易的用户(哪怕值为null),可以换成LEFT JOIN
  • MAX()函数会自动忽略null值,不用担心空交易的影响

内容的提问来源于stack exchange,提问作者riloth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:21:09