我正在尝试用 SQL 计算百分比。我想找出以“RT @”开头的输出百分比
CREATE TABLE temp
([tweet] varchar(130)) ;
INSERT INTO temp
([tweet])
VALUES
('WillyWonka'),
('Barbara'),
('JoanOfArcJoanArcadia'),
('LisaDLisa Diddle'),
('LisaDSkip Padington'),
('WillyNillySiil Stoinson'),
('RT @Barbara'),
('JoanOfArcJoanArcadia'),
('LisaDLisa Diddle'),
('RT @LisaDSkip Padington')
;
我的代码正确地返回了我想看到的行,但是我如何计算这些行在总输出中的百分比...我知道它是选择两个部分并将它们分开的东西,但我无法得到它对。
select count(*)
from temp
where tweet like 'RT @%'
或
select *
from temp
where tweet like 'RT @%'
我已经阅读了其他一些帖子,但距离获得输出还很远。 谢谢。
最佳答案
您需要条件聚合
来查找以'RT @'
开头的输出百分比
SELECT ( Count(CASE WHEN tweet LIKE 'RT @%' THEN 1 END)
/ Cast(Count(*) AS NUMERIC(10, 2)) ) * 100
FROM temp
关于sql - 在 SQL 中计算百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28994707/