Sql server %按组别划分的总数
我的表中有三列,我需要计算每组占总数的% 代码:Sql server %按组别划分的总数,sql-server,percentage,subtotal,Sql Server,Percentage,Subtotal,我的表中有三列,我需要计算每组占总数的% 代码: 选择AppVintage、策略、应用程序 从mytable 按AppVintage、策略、应用程序分组 每个日期显示4次,每行显示一个不同的类,然后每行显示一个应用程序总数 该表如下所示: 示例数据集的代码: CREATE TABLE mytable( AppVintage VARCHAR(6) NOT NULL PRIMARY KEY ,Strategy VARCHAR(28) NOT NULL ,Apps INTEGER
选择AppVintage、策略、应用程序
从mytable
按AppVintage、策略、应用程序分组
每个日期显示4次,每行显示一个不同的类,然后每行显示一个应用程序总数
该表如下所示:
示例数据集的代码:
CREATE TABLE mytable(
AppVintage VARCHAR(6) NOT NULL PRIMARY KEY
,Strategy VARCHAR(28) NOT NULL
,Apps INTEGER NOT NULL
);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Nov16','300',10197);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Nov-16','ORIG',29023);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Nov-16','400',7219);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Nov-16','500',9452);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Dec-16','300',12517);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Dec-16','ORIG',37762);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Dec-16','400',8992);
INSERT INTO mytable(AppVintage,Strategy,Apps) VALUES ('Dec-16','500',11229);'
我需要的是添加一个列,计算每个appvintage的每个策略的应用程序百分比
有办法做到这一点吗?提前谢谢 您可以使用窗口函数来执行此操作(假设SQL Server 2008+)
SELECT
AppVintage,
Strategy,
Apps,
Apps/SUM(Apps) OVER (PARTITION BY AppVintage) as Percent_Apps
FROM myTable