sql-server - 基于总和计算 Percetange
问题描述
我目前有以下查询,按城市查看销售额 - 不包括伦敦。
SELECT
City,
SUM(Sales) as Total
FROM Employees
WHERE City != 'London'
Group BY City
电流输出
City Total
Kirkland 3
Redmond 4
Seattle 9
Tacoma 2
我需要在下面创建第三列“百分比”(%,没有小数点)。你能帮我解决这个问题吗?非常感谢您!
期望的输出
City Total Percentage
Kirkland 3 17%
Redmond 4 22%
Seattle 9 50%
Tacoma 2 11%
解决方案
试试下面的查询。
SELECT
City,
SUM(Sales) as Total
FROM Employees
WHERE City != 'London'
Group BY City
The result will be;
City Total
Kirkland 3
Redmond 4
Seattle 9
Tacoma 2
要计算百分比,
DECLARE @Total INT
SELECT @Total=SUM(Sales) FROM Employees WHERE City != 'London'
SELECT
City,
SUM(Sales) as Total,
CAST(SUM(Sales) * 100 / CAST(@Total AS DECIMAL(18,2)) AS DECIMAL (18,2))
FROM Employees
WHERE City != 'London'
Group BY City
推荐阅读
- angular - Angular 等效的 Webpack 空包
- google-calendar-api - Google Calendar API 上的“序列”是什么?
- flutter - Flutter 应用程序仅在 Chrome 上丢帧
- java - Pdfbox - pdf 生成 3.0.0-RC1 与 2.0.24 的问题
- powershell - 无法在 powershell 中加载 .dll 文件
- powerbi - 计算 DAX 中“不存在任何”的数量
- amazon-web-services - AWS S3 自动文件上传
- javascript - 如果用户没有按下按钮,则阻止步进表单
- android - 哪款 Android 设备具有 BIOMETRIC_STRONG(第 3 类)人脸身份验证?
- dll - 如何在 BtsCatalogExplorer 中查找管道组件?