我要计算commskill
、abilityskill
、interest
、presentation
、methodology
、maintainsclass
、punctual
、attitude
列中所有“1”的出现情况。我的表“反馈”列如下:
fid的值是自动递增的,所有技能的等级都在1-优秀,2-好,3-平均,4-低于平均水平.
我已经尝试过这个查询:
select tname,sname,count(*) as excellent from feedback where commskill=1 or attitude =1 or presentation =1 or abilityskill=1 or interest=1 or punctual =1 or maintainsclass=1 or methodology =1 group by tid;
但答案表明,这是意外和错误的。
发布于 2016-06-25 18:18:06
在栏目中总出现“1”
SELECT
sum(if(commskill=1,1,0)
+ sum(if(attitude =1,1,0)
+ sum(if(presentation =1,1,0)
+ sum(if(abilityskill=1,1,0)
+ sum(if(interest=1,1,0)
+ sum(if(punctual =1,1,0)
+ sum(if(maintainsclass=1,1,0)
+ sum(if(methodology =1,1,0)
AS excellent
FROM feedback;
为每一位老师取得成绩
SELECT
tname
, sname
, sum(if(commskill=1,1,0)
+ sum(if(attitude =1,1,0)
+ sum(if(presentation =1,1,0)
+ sum(if(abilityskill=1,1,0)
+ sum(if(interest=1,1,0)
+ sum(if(punctual =1,1,0)
+ sum(if(maintainsclass=1,1,0)
+ sum(if(methodology =1,1,0)
tid反馈组优秀者;
https://stackoverflow.com/questions/38031447
复制相似问题