数据库中有两个表,学员反馈表中的FbID对应反馈信息表的serID,反馈表中记录的是反馈的标准
/*--学员反馈表--*/ 
              班级编号  学员编号    反馈编号        分值项 
SELECT SerID, CassID, UserSerID,  FbID,      FbFraction FROM SX_StuFeedback /*--反馈信息表--*/ 
        编号    标题        分值A        分值B        分值C        分值D        分值E 
SELECT SerID, FbTitle,FbFractionA, FbFractionB, FbFractionC, FbFractionD, FbFractionE FROM X_Feedback 表中有如下数据 
/*--反馈信息表,每个选项都有5个分值,可选择其中一个--*/ 
1,老师,10,8,6,4,2 
2,家长,10,8,6,4,2 
3,学生,10,8,6,4,2 
4,朋友,10,8,6,4,2 
5,家人,10,8,6,4,2 
..................... /*--学员反馈表--*/ 
1,3,101001,1,10 
2,3,101001,2,8 
3,3,101001,3,8 
4,3,101001,4,10
5,3,101001,5,10
6,3,101002,1,6 
7,3,101002,2,6 
8,3,101002,3,4 
9,3,101002,4,8 
10,3,101002,5,8
...................... 
要查询出以下格式的数据 
标题    分值A总分      分值B总分  分值C总分    分值D总分  分值E总分  总分 
老师      10            0        6          0        0        16 
家长      0             8        6          0        0        14 
学生      0             8        0          4        0        12 
朋友      10            8        0          0        0        18 
家人       10            8        0          0        0        18
................................ 
求高手给个查询语句,先谢谢了 

解决方案 »

  1.   

    select * from SX_StuFeedback a left join X_Feedback b on a.UserSerID = b.SerID
      

  2.   

    select FbTitle as '标题',
    sum(FbFractionA) as '分值A总分', sum(FbFractionB) as '分值B总分', sum(FbFractionC) as '分值C总分', 
    sum(FbFractionD) as '分值D总分', sum(FbFractionE) as '分值E总分',
    sum(FbFractionA + FbFractionB + FbFractionC + FbFractionD + FbFractionE) as '总分' from (
    SELECT FbTitle,FbFractionA, FbFractionB, FbFractionC, FbFractionD, FbFractionE FROM X_Feedback,SX_StuFeedback
    where (X_Feedback.SerID=SX_StuFeedback.FbID)
    ) as tab
    group by FbTitle
      

  3.   


    /*--学员反馈表--*/ 
     班级编号  学员编号    反馈编号        分值项 
    SELECT SerID, CassID, UserSerID,  FbID,      FbFraction FROM SX_StuFeedback 
    /*--学员反馈表--*/ 
    1,3,101001,1,10 
    2,3,101001,2,8 
    3,3,101001,3,8 
    4,3,101001,4,10 
    5,3,101001,5,10 
    6,3,101002,1,6 
    7,3,101002,2,6 
    8,3,101002,3,4 
    9,3,101002,4,8 
    10,3,101002,5,8 先取得每个反馈对象的分数总值
    select  UserSerID,sum(FbFraction)  from  SX_StuFeedback  groub by(UserSerID) 
      

  4.   


    select FbTitle as '标题','分值A总分'=sum(case when FbFraction=10 then 10 else 0 end),
     '分值B总分'=sum(case when FbFraction=8 then 8 else 0 end),'分值C总分'=sum(case when FbFraction=6 then 6 else 0 end),
    '分值D总分'=sum(case when FbFraction=4 then 4 else 0 end),'分值E总分'=sum(case when FbFraction=2 then 2 else 0 end),'总分'=sum(FbFraction)
    from X_Feedback x,SX_StuFeedback sx
    where sx.FbID=x.SerID
    group by FbTitle