datagrid中的转换表 - 简单类注册表应用程序

时间:2016-04-04 14:47:07

标签: c# sql winforms

我正在制作一些简单的应用来管理学生的成绩。我有一个带有等级的数据网格问题。

我想在datagrid中以这种格式显示数据: enter image description here

数据库中的表格如下所示:

enter image description here

我想以某种方式从表格转换为' TypeName'将在列名中,重要的是,它可以重复,因为学生可以有相同类型的2个等级。

它必须只有一行,因为它只是一个学生的数据网格。

我想我应该使用Pivot或Unpivot函数,但我在这方面不太好,我读到该函数使用聚合,我不想使用它。

1 个答案:

答案 0 :(得分:0)

You need to start with a basic pivot view, something like this:

    SELECT *
FROM (
    SELECT 
       lastname, grade, subjectname, typename
    FROM table
) as s
PIVOT
(
    SUM(grade)
    FOR [typename] IN (test1, answer, listening, speaking, etc.....)
)AS pvt

Then you need to do something like a sum in the grade field for example.