从不同的表中获取数据库中的数据
我正在创建这个移动门户/应用程序使用(ASP + WML)我需要生成一个学生在某一学期在某一年中所学的课程列表。
我有以下表格:
我从上一页有以下参数:
string StudentId = Request.Params["StudentId"]; string Year = Request.Params["Year"]; string Semester = Request.Params["Semester"];
- (
Year
)的值是“2011”或“2012”。 - (
Semester
)的价值是“第一”或“第二”或“夏季”。 - (
StudentId
)的值是在Students表中从id之前提取的数字。
作为表内数据的示例。
我被困在这里
string connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFileName=|DataDirectory|\Uni.MDF;" + "Integrated Security=True;User Instance=True"; string queryString =" ??????????????????????????? " ;
我想获得一个页面来显示用户注册的课程(在给定的学期中)。 该信息稍后将通过URL传递到新页面,其中将显示信息。
就像是:
First Semester 2010 Student : Arin Rizk Course Name No. of Credit Mark AAA 3 65 BBB 3 23 CCC 3 65 DDD 3 58 EEE 3 70 Your GPA for this semster is 3.12
编辑
我将如何在页面中打印信息?
我该怎么做? 我试图创建一个视图,但我不知道为什么它不起作用。
我无法更改表格或数据库结构。
先感谢您。
select st.firstname + ' ' + st.lastname,se.year, c.coursename,c.credits,ri.mark from students st inner join RegisteredIn ri on ri.studentid=st.id inner join semester se on se.id=ri.semesterid inner join Courses c on c.id=se.courseid
此查询将为您提供名称,年份,coursename,信用和分数。
您需要为gpa计算编写另一个查询,或者您可以使用上面获得的数据在Web服务器上进行计算。
对于课程列表,您可以:
Select Courses.CourseName, Courses.NumberOfCredits, RegisteredIn.Mark From dbo.Courses Inner Join dbo.RegisteredIn On Courses.id = RegisteredIn.CourseID Inner Join dbo.Semester On RegisteredIn.SemesterID = Semester.id Where RegisteredIn.StudentID = '20111' AND Semester.Title = 'First' AND Semester.Year = 2011 Order By Courses.CourseName