我正在使用Firebird。我有4张桌子:
**tbl_student**
s_id s_name s_gender c_id
-----------------------------------
1 Mike M 1
2 Adri M 4
3 Grij F 2
**tbl_class**
c_id c_name
----------------
1 I
2 II
3 III
4 IV
**tbl_subject**
sub_id sub_name sub_max_marks c_id
-------------------------------------------
1 Maths 100 1
2 Physics 100 1
3 English 50 2
**tbl_marks**
s_id sub_id obtn_marks
-----------------------------------------
1 1 67
2 2 87
3 2 45
现在我创建了一个表单(使用c#.net的Windows表单),用户可以选择Class,Subject&学生。根据这些参数,我想填充一个看起来像的网格/列表视图:
Class Name Student Id Student Name Subject Name Marks Obtained
-------------------------------------------------------------------------
I 1 Mike Maths
现在点击gridview / listview的上一行,另一个表格就是 用户将输入该学生在该特定科目中获得的分数。
我的问题是我无法以上述格式填充gridview / listview。任何代码都会非常有用。到目前为止,我已经尝试了以下SQL查询:
SELECT cls.c_name,
stu.s_id, stu.s_name,
sub.sub_name,
mrk.obtn_marks
FROM tbl_student stu
LEFT JOIN tbl_class cls ON cls.c_id = stu.c_id
LEFT JOIN tbl_subject sub ON sub.c_id = cls.c_id
LEFT JOIN tbl_marks mrk ON mrk.s_id = stu.s_id
WHERE cls.cls_id=@cls_id
AND sub.sub_id=@sub_id
AND stu.s_id=@s_id