【问题标题】:Calculating average of students' scores (with different coefficients)计算学生平均分(不同系数)
【发布时间】:2012-09-01 06:38:54
【问题描述】:

我必须计算学生的平均分数。

学生有两个不同的分数:期中和期末。

first course average = ( (midterm score*1) + (Final score*2) ) / 3 )

ASP.NET (C#) 和 SQL 如何做到这一点?

这让我很困惑。哪个部分应该用 C# 或 SQL 编写?

【问题讨论】:

  • 我猜这是作业。

标签: c# asp.net sql average


【解决方案1】:

取决于 SQL 的风格 您可以在 SQL 中完成这一切,只需创建一个新列 'first course average'。假设您有一张表,每个学生都有一条记录

SELECT ([Midterm Score] + (2 * [Final Score])) / 3 AS 'first course average'
FROM #gradeTable 
GROUP BY [Student ID]

您也可以使用 C# 中的 LINQ 库,但鉴于本练习的简单性,这确实没有必要。

【讨论】:

    【解决方案2】:

    分数将全部存储在 sql 数据库中。您还可以使用专门的查询在 Sql 中进行计算。在这种情况下,最简单的方法是检索分数并用 c#(或任何其他编程语言)进行计算,我喜欢 python 和 php,但一切都在它的位置。

    这能回答你的问题吗?

    【讨论】:

    • 如何通过sql计算这个公式?!我的意思是首先我必须 SUM(GradeColumns) 哦,然后必须这样做: Grade*ItsCoefficient ,我应该将这些值保存在 MyDb 中吗?
    【解决方案3】:

    您可以像这样直接从 SQL 计算:

    SELECT ((Midterm + (Final*2))/3) AS First_Course_Average FROM Scores WHERE ...
    

    See this SQLFiddle

    【讨论】:

      【解决方案4】:

      您也可以通过在公式部分中编写它来做到这一点。可以在列属性中找到。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-09-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多