Министерство образования и науки Российской Федерации
Новосибирский государственный технический университет
Кафедра ВТ
Лабораторная работа № 5
Группа: АМ-509
Выполнил: Трегубов И.Г.
Проверил: Трошина Г.В.
Вариант 9
Новосибирск 2008г.
изучить средства быстрого поиска информации в базе данных и получение ответов на разнообразные вопросы в среде Visual FoxPro. Изучение конструктора запросов Visual FoxPro. Научится создавать запросы любого уровня сложности, производить различные вычисления над полями, выбираемыми из таблиц, осуществлять группировку полей запроса.
Выполнить выбор записей по диапазону значений для заданной базы данных. Провести вычисление итоговых значений. Осуществить выборку из таблицы. Провести упорядочение данных в запросе по нескольким полям. Продемонстрировать результаты работы запросов. Ответить на контрольные вопросы.
Выполнить запросы: вывод минимального, максимального и среднего значения возраста для студентов 2 и 3 курсов факультета ФАМ; вывод фамилий всех студентов, получающих стипендию от 100 до 3000 рублей и проживающих во 2 и 6 общежитии, кроме обучающихся на 1 и 3 курсе факультетов ФЛА, РТФ; вывод фамилий всех студентов, кроме обучающихся на 2 курсе факультетов РТФ, ФТФ; выборка фамилий всех студентов 4 и 5 курса факультета АВТ и сдавших экзамен по математике на 4 и 5.
Исходная база данных была дополнена данными в соответствии с заданием:
Рис 1. База данных «Общага»
1. Запрос 1
Вывод минимального, максимального и среднего значения возраста для студентов 2 и 3 курсов факультета ФАМ
SQL – код запроса:
SELECT MIN(YEAR(DATE()) - YEAR(Obshaga.birthday)),;
AVG(YEAR(DATE()) - YEAR(Obshaga.birthday)),;
MAX(YEAR(DATE()) - YEAR(Obshaga.birthday));
FROM obshaga;
WHERE Obshaga.faculty = "ФАМ";
AND Obshaga.course = "2";
OR (Obshaga.course = "3")
Результат:
Рис 2. Результат запроса 1
2. Запрос 2
Вывод фамилий всех студентов, получающих стипендию от 100 до 3000 рублей и проживающих во 2 и 6 общежитии, кроме обучающихся на 1 и 3 курсе факультетов ФЛА, РТФ.
SQL – код запроса:
SELECT Obshaga.surname, Obshaga.stependion, Obshaga.n_obshaga,;
Obshaga.faculty, Obshaga.course;
FROM obshaga;
WHERE (Obshaga.stependion >= 100;
AND Obshaga.stependion <= 3000;
AND (Obshaga.n_obshaga = 2;
OR Obshaga.n_obshaga = 6));
AND NOT ((Obshaga.faculty = "ФЛА";
OR Obshaga.faculty = "РТФ");
AND (Obshaga.course = "1";
OR Obshaga.course = "3"));
Результат:
Рис 3. Результат запроса 2
3. Запрос 3
Вывод фамилий всех студентов, кроме обучающихся на 2 курсе факультетов РТФ, ФТФ.
SQL – код запроса:
SELECT Obshaga.surname, Obshaga.course, Obshaga.faculty;
FROM obshaga;
WHERE NOT ((Obshaga.faculty = "РТФ";
OR Obshaga.faculty = "ФТФ");
AND Obshaga.course = "2");
Результат:
Рис 4. Результат запроса 3
4. Запрос 4
Выборка фамилий всех студентов 4 и 5 курса факультета АВТ и сдавших экзамен по математике на 4 и 5..
SQL – код запроса:
SELECT Obshaga.surname, Obshaga.course, Obshaga.math_ekz,;
Obshaga.faculty;
FROM obshaga;
WHERE Obshaga.faculty = "АВТ";
AND (Obshaga.course = "4";
OR Obshaga.course = "5");
AND (Obshaga.math_ekz = 4;
OR Obshaga.math_ekz = 5)
Результат:
Рис 5. Результат запроса 4
В ходе выполнения пятой лабораторной работы были изучены средства Visual FoxPro для создания запросов, то есть осуществления быстрого поиска информации в базе данных. Также были изучены основы написания запросов на языке SQL.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.