我有一个学生桌,那里有七个

    columns: Reg_No(i.e.Register number of
          student),Mark1,Mark2,Mark3,Best1,Best2,Total.


从数据库中检索数据Reg_No,Mark1,Mark2和Mark3。
我只是在寻找一种从Mark1,Mark2和Mark3中选择最多2个标记并填充的方法
在Best1和Best2列中。

最后,我应该在“总计”列中产生Mark1和Mark2的相加结果。请给我一个方法。

最佳答案

我将假设您想要一个SQL答案。


  选择Reg_No,Mark1,Mark2,MAX(Mark1)AS Best1,MAX(Mark2)
  最佳2,SUM(Mark1 + Mark2)作为学生GROUP BY Reg_No的总计,
  马克1,马克2


但是,此查询可能不是很有用,因为它会将聚合的数据与要聚合的数据混合在一起。如果您只需要查看每个唯一学生的最佳成绩和总成绩,则更好的查询是:


  SELECT Reg_No,MAX(Mark1)AS Best1,MAX(Mark2)AS Best2,
  学生总计SUM(Mark1 + Mark2)AS GROUP BY Reg_No

07-24 14:10