我在临时表中有这个查询 我需要帮助人员
Create Table ##TBL (ID INT, NOs INT,PersonCount INT)
INSERT INTO ##TBL VALUES
(0,0,36),
(0,0,10),
(2,1,30),
(2,2,35),
(2,2,32),
(3,0,24),
(4,0,18),
(4,2,9),
(4,0,33),
(4,3,45),
(5,0,21)
SELECT * FROM ##TBL
我怎样才能得到结果 例如,当ID相同时,我应该找到最大PersonCount值的百分比。 例如,当ID = 2时,PersonCount列将为35 /(30 + 35 + 32),即PersonCount列的最大值除以总和(PersonCount) 如果是ID = 5那么我应该有21/21 = 1.00
我应该有这个结果
ID NO PersonCount Percent
0 0 36 0.78
2 2 35 0.36
3 0 24 1.00
4 3 45 0.43
5 0 21 1.00
非常感谢你们提前 有任何问题请告诉我
答案 0 :(得分:3)
试试这个:
SELECT ID, MAX( NOs ) NOs,
MAX( PersonCount ) m,
CAST( CAST( MAX( PersonCount ) AS DECIMAL(10,2) ) / CAST( SUM( PersonCount ) AS DECIMAL(10,2) ) AS DECIMAL(10,2) ) x
FROM ##TBL
GROUP BY ID
我希望这不是你的功课!