当我查询表“ class_attendance”时。

select rollno, name, fname, date, attandance from class_attendance where class = '6th' and month = 'November'


我明白了

rollno    name         fname        date        attandance
111      zeeshan        Khan      2013-11-08        P
111      zeeshan        Khan      2013-11-09        P
111      zeeshan        Khan      2013-11-28        A
112      ahmad          Ali       2013-11-28        P


我想以这种方式在datagridview中显示它(Date wise)。

rollno     name         fname       8     9     28
111      zeeshan        Khan        P     P      A
112      ahmad          Ali                      P


我应该怎么做?

最佳答案

尝试这个:-

select rollno,name,fname,[8],[9],[28]
FROM
(
    select rollno,name,fname, DATEPART(d,[date]) enterdate,attandance
    from students
)first
PIVOT
(
  MAX(attandance)
  FOR [enterdate]
  IN ([8],[9],[28])
)
as pivottable


这给了我以下输出:-



然后,您可以在gridview中显示此数据。

10-06 03:30