0

以下の SQL ステートメントを使用すると、必要に応じて学生に関するすべての情報を取得できます。ただし、実際には各学生のレコードを最後に入力したときにレコードが重複するという問題が 1 つだけあります。

学生証 学年 学期
20012-000001 20012-20013 1
20012-000001 20012-20013 2
20012-000001 20012-20013 3    
20012-000001 20012-20013 4        
20012-000001 20012-20013 5
    sqlSTR = "SELECT tblStudent.StudentID AS '??? ??????' , (tblStudent.FirstName + ' ' + tblStudent.MiddleName + ' ' + tblStudent.GrandFatherName + ' ' + tblStudent.LastName) as '?????' ," & _
                "tblStudent.Gender as '?????', tblStudent.Citizenship as '???????', tblStudent.Type as '??? ?????'," & _
                "tblDepartment.DepartmentTitle as '?????', tblEnrolment.SchoolYear as '????? ????????',tblYearLevel.YearLevelTitle as '????? ???????',  " & _
                "'????'= CASE WHEN Len(tblGraduate.StudentID)<>12 THEN '???' ELSE ''End , " & _
                "'???? ???'= CASE WHEN Len(tblDropped.StudentID)<>12 THEN '???' ELSE ''End , " & _
                "'??????'= CASE WHEN tblStudent.Transferee ='True' THEN '???' ELSE ''End" & _
                " FROM tblDropped RIGHT JOIN " & _
                "(tblGraduate RIGHT JOIN " & _
                "(tblDepartment RIGHT JOIN " & _
                "(tblYearLevel RIGHT JOIN " & _
                "(tblSection RIGHT JOIN " & _
                "(tblStudent LEFT JOIN tblEnrolment " & _
                "ON tblStudent.StudentID = tblEnrolment.StudentID) " & _
                "ON tblSection.SectionID = tblEnrolment.SectionOfferingID) " & _
                "ON tblYearLevel.YearLevelID = tblEnrolment.YearLevelID) " & _
                "ON tblDepartment.DepartmentID = tblSection.DepartmentID) " & _
                "ON tblGraduate.StudentID = tblStudent.StudentID) " & _
                "ON tblDropped.StudentID = tblStudent.StudentID" & _
                " " & sFilter & _
                " ORDER BY tblStudent.StudentID DESC , tblYearLevel.YearLevelTitle ASC"
4

1 に答える 1

0

レコードを含むテーブルに日付フィールドを追加し、最新のものでフィルターします。テーブルに既に 1 つある場合は、日付による WHERE 句を含めますか?

あなたのテーブルを正しく理解していれば、最後のレコードは常に最後の学期にあります。

于 2012-07-28T22:43:52.783 に答える