我正在运行一个按国家/地区划分百分比的查询.. 像这样:
select country_of_risk_name, (sum(isnull(fund_weight,0)*100)) as 'FUND WEIGHT' from OFI_Country_Details
WHERE FIXED_COMP_FUND_CODE = 'X'
GROUP BY country_of_risk_name
这将返回正确的输出。范围可以从 1 个国家到 100 个国家。我如何编写我的逻辑,它显示前 5 个最高百分比,然后将前 5 名之外的所有那些分组到“其他”类别中?示例输出:
- 美国 - 50%
- 加拿大 - 10%
- 法国 - 4%
- 西班牙 - 2%
- 意大利 - 1.7%
- 其他 - 25%