sql - SQL 计数(最大值())
问题描述
我正在尝试使用 Microsoft SQl Server Management Studio 计算我的查询中最大的发行者。在这种情况下,我希望它计算最大的实例数ISSUER_COUNTRY
,在这种情况下6
,最大的发行者是US
.
Declare @T as varchar(10) ='2019-08-01', @PortfolioID as Varchar(10)='B4'
;
select [value_date], [SHORT_DESCRIPTON], [SM_SEC_GROUP],[ULT_ISSUER_NAME], [ISSUER_COUNTRY]
from [DATABASE]
where [value_date] in (@T)
and PORTF_LIST=@portfolioID
and [SM_SEC_GROUP] in ('IBND','BND')
value_date SHORT_DESCRIPTON SM_SEC_GROUP PORTF_LIST ULT_ISSUER_NAME ISSUER_COUNTRY
2019-08-01 ITALY (REPUBLIC OF) RegS BND B4 ITALY (REPUBLIC OF) IT
2019-08-01 GERMANY (FEDERAL REPUBLIC OF) RegS BND B4 GERMANY (FEDERAL REPUBLIC OF) DE
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
2019-08-01 GERMANY (FEDERAL REPUBLIC OF) RegS BND B4 GERMANY (FEDERAL REPUBLIC OF) DE
2019-08-01 ITALY (REPUBLIC OF) RegS BND B4 ITALY (REPUBLIC OF) IT
2019-08-01 FRANCE (REPUBLIC OF) RegS BND B4 FRANCE (REPUBLIC OF) FR
2019-08-01 SPAIN (KINGDOM OF) BND B4 SPAIN (KINGDOM OF) ES
2019-08-01 SPAIN (KINGDOM OF) BND B4 SPAIN (KINGDOM OF) ES
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
2019-08-01 TREASURY NOTE BND B4 UNITED STATES OF AMERICA US
解决方案
我想你只是想要top (1)
和group by
:
select top (1) [ISSUER_COUNTRY], count(*)
from [DATABASE]
where [value_date] in (@T) and
PORTF_LIST = @portfolioID and
[SM_SEC_GROUP] in ('IBND', 'BND')
group by ISSUER_COUNTRY
order by count(*) desc;
如果您想要多行以防出现平局,请使用top (1) with ties
.
推荐阅读
- java - 如何使用 where 子句更新 Spring Data JPA 中的表
- node.js - HTTPS 响应未在浏览器中设置 Cookie
- javascript - Google reCaptcha 验证弹出窗口未在 Mat Dialog 中正确显示
- python - 无论深度如何,在任意点修改列表的随机值
- matlab - 如何在循环之间延迟而不影响 GUI
- javascript - 从javascript中的文本url读取
- django - MultipleObjectsReturned:get() 在 DetailView 上返回了多个对象
- c++ - 错误 C4430:缺少类型说明符 - 假定为 int。注意:C++ 对我的构造函数不支持 default-int
- mysql - loopback4 更改模型数据类型
- python - 如何在 pytest 中保持单元测试和集成测试分开