Программирование в среде Visual Fox Pro. База данных «Факультет», страница 5

INNER JOIN fakultet!predmet_3   ON  Students_2007_semestr1.предмет_3 = Predmet_3.id_predmet;

INNER JOIN fakultet!fakult                         ON  fakult.id_fakult = Students_2007_semestr1.id_fakult ;

                            where ((Students_2007_Semestr1.оценка_1 = thisform.Pageframe1.Page3.Pageframe1.Page3.Combo1.value;

                            and ((predmet_1.дисциплина = check_1_1  and activ_1 = 1) or (predmet_1.дисциплина = check_2_1  and activ_2 = 1);

                            or (predmet_1.дисциплина = check_3_1  and activ_3 = 1)    or (predmet_1.дисциплина = check_4_1  and activ_4 = 1);

                            or (predmet_1.дисциплина = check_5_1 and activ_5 = 1)     or (predmet_1.дисциплина = check_6_1  and activ_6 = 1);

                            or (predmet_1.дисциплина = check_7_1  and activ_7 = 1)    or (predmet_1.дисциплина = check_8_1  and activ_8 = 1);

                            or (predmet_1.дисциплина = check_9_1  and activ_9 = 1)    or (predmet_1.дисциплина = check_10_1  and activ_10 = 1);

                            or (predmet_1.дисциплина = check_11_1  and activ_11 = 1) or (predmet_1.дисциплина = check_12_1  and activ_12 = 1)));

                            or (Students_2007_Semestr1.оценка_2 = thisform.Pageframe1.Page3.Pageframe1.Page3.Combo1.value;

                            and ((predmet_2.дисциплина = check_1_1  and activ_1 = 1) or (predmet_2.дисциплина = check_2_1  and activ_2 = 1);

                            or (predmet_2.дисциплина = check_3_1  and activ_3 = 1)    or (predmet_2.дисциплина = check_4_1  and activ_4 = 1);

                            or (predmet_2.дисциплина = check_5_1  and activ_5 = 1)    or (predmet_2.дисциплина = check_6_1  and activ_6 = 1);

                            or (predmet_2.дисциплина = check_7_1  and activ_7 = 1)    or (predmet_2.дисциплина = check_8_1  and activ_8 = 1);

                            or (predmet_2.дисциплина = check_9_1  and activ_9 = 1)    or (predmet_2.дисциплина = check_10_1  and activ_10 = 1);

                            or (predmet_2.дисциплина = check_11_1  and activ_11 = 1) or (predmet_2.дисциплина = check_12_1  and activ_12 = 1)));

                            or (Students_2007_Semestr1.оценка_3 = thisform.Pageframe1.Page3.Pageframe1.Page3.Combo1.value;

                            and ((predmet_3.дисциплина = check_1_1  and activ_1 = 1) or (predmet_3.дисциплина = check_2_1  and activ_2 = 1);

                            or (predmet_3.дисциплина = check_3_1  and activ_3 = 1)    or (predmet_3.дисциплина = check_4_1  and activ_4 = 1);

                            or (predmet_3.дисциплина = check_5_1  and activ_5 = 1)    or (predmet_3.дисциплина = check_6_1  and activ_6 = 1);

                            or (predmet_3.дисциплина = check_7_1  and activ_7 = 1)    or (predmet_3.дисциплина = check_8_1  and activ_8 = 1);

                            or (predmet_3.дисциплина = check_9_1  and activ_9 = 1)    or (predmet_3.дисциплина = check_10_1  and activ_10 = 1);

                            or (predmet_3.дисциплина = check_11_1  and activ_11 = 1) or (predmet_3.дисциплина = check_12_1  and activ_12 = 1))));

              and Students_2007_Semestr1.семестр = val(thisform.Pageframe1.Page3.Pageframe1.Page3.Combo2.value);

              and (Students_2007_Semestr1.дата_сдачи_1 between thisform.Pageframe1.Page3.Pageframe1.Page3.Text1.value and thisform.Pageframe1.Page3.Pageframe1.Page3.Text2.value);

              and (Students_2007_Semestr1.дата_сдачи_2 between thisform.Pageframe1.Page3.Pageframe1.Page3.Text1.value and thisform.Pageframe1.Page3.Pageframe1.Page3.Text2.value);

              and (Students_2007_Semestr1.дата_сдачи_3 between thisform.Pageframe1.Page3.Pageframe1.Page3.Text1.value and thisform.Pageframe1.Page3.Pageframe1.Page3.Text2.value)

Рис.16. Форма для запроса III.

Рис.17. Результаты выполнения запроса III.

IV.       Найти долю студентов, сдавших сессию на отлично, на хорошо и отлично, без двоек, в срок (рис.18, 19):