Основы работы с базами данных


         

мы получим результат отбора данных


Выполнив запрос (кнопка Run на стандартной панели), мы получим результат отбора данных (рис. 6.16.).


Рис. 6.16.  Результаты отбора данных по запросу

Более сложный вариант - запрос с группировкой данных и расчетом групповых итогов. Поставим задачу показать средний балл для студенческих групп по экзаменационным оценкам для факультета № 1 за 1-й семестр 2005/2006 учебного года по предмету № 1. Сделать это можно путем модификации в Конструкторе предыдущего запроса.

Далее уберем лишние поля на странице Fields. При группировке данных допускается отображение только сгруппированных или итоговых данных, таких как следующие:

  • значения столбцов группировки (входящих в предложение GROUP BY);
  • расчетные значения для групп, такие, как SUM(°), AVG(°) и пр.


Не допускается отображение значений отдельных строк таблицы.

Оставим в списке полей только поле группировки - n_grup, и добавим новое поле - выражение для расчета средней оценки - AVG(VAL(ball). На странице Order By запишем одно условие - упорядочить по новому расчетному полю в порядке убывания. На странице Filter оставим все прежние условия отбора. Введем вывод результатов запроса в таблицу query_s2.dbf1)

Текст запроса будет выглядеть следующим образом:

SELECT Spisok.n_grup, AVG(VAL(Ocenki.ball)); FROM ; STUDENTS!SPISOK ; INNER JOIN STUDENTS!OCENKI ; ON Spisok.nz = Ocenki.nz; WHERE Spisok.n_fclt = 1; AND Ocenki.semestr = 1; AND Ocenki.n_predm = 1; AND VAL(Ocenki.ball) > 1; AND VAL(Ocenki.ball) < 6; AND YEAR(Ocenki.data_b) = 2006; GROUP BY Spisok.n_grup; ORDER BY 2 DESC; INTO TABLE query_s2.dbf

Результаты отбора данных по запросу показаны на рис. 6.17.


Рис. 6.17.  Отбор данных по запросу с группировкой

Результаты отбора данных могут быть показаны в виде диаграммы (объект Microsoft Graph). Для этого можно воспользоваться мастером построения диаграмм в VFP - в меню системы Tools - Wizards - All Wizards:, далее в окне полного списка Мастеров выбрать GraphWizard (см.

Содержание  Назад  Вперед