select
sum(case when g.golffield_ball = 0 then 1 else 0 end) 高尔夫球,
sum(case when g.golffield_ball = 1 then 1 else 0 end) 羽毛球,
sum(case when g.golffield_ball = 3 then 1 else 0 end) 乒乓球,
sum(case when g.golffield_ball = 5 then 1 else 0 end) 保龄球,
sum(case when g.golffield_ball = 2 then 1 else 0 end) 台球,
sum(case when g.golffield_ball = 4 then 1 else 0 end) 网球,
sum(case when g.golffield_ball = 6 then 1 else 0 end) 篮球,
sum(case when g.golffield_ball = 7 then 1 else 0 end) 足球,
sum(case when g.golffield_ball >=0 then 1 else 0 end) 总数
from golffield g
where g.golffield_delflag = 0
你有8种球,而不是6种
select 高尔夫球/总数*100 as 高尔夫球,, 羽毛球/总数*100 as 羽毛球, 依次类推
from (你贴出的查询语句) T