- •Занятие 1. Создание таблиц.
- •1.Создание бд
- •Занятие 2. Работа с таблицами. Создание простых форм.
- •Занятие 3. Создание простых отчетов
- •Задание 4 Создание простых запросов (qbe).
- •Занятие 5 Создание простых запросов (продолжение)
- •Занятие 6 Построение многотабличных запросов
- •Задание 7 Создание запросов с использованием статистических функций
- •Занятие 8
Занятие 8
Вызовите конструктор запросов, установит режим SQL, наберите запросы и выполните их:
1. Выдать список всех студентов:
Select * From Student
2. Составить список всех фамилий студентов с годом их поступления.
Select FIOS, YearEnter From Student
3. Составить список студентов, обучающихся на ФИТ.
Select Student.FIOS From Student, Group Where Group.Sfacult = “ФИТ” And Group.Sgroup = Student.Sgroup
4. Выдать список студентов и время их обучения.
Select FIOS, Year(Date()) – YearEnter As [Срок обучения] From Student
5.Составить список ведомостей по предметам, указав предметы для которых экзамены не сдаются.
Select Predmet.Predm, Vedom.Nved From Predmet Left Join Vedom On Predmet.CodePredm = Vedom.Code.Predm
6.Составить список студентов, имеющих отличные оценки.
Select Student.FIOS From Student, Ekzamen Where Ekzamen.CodOcen = 5 And Ekzamen.Nzach = Student.NZach
7. Составить список студентов, фамилии которых со второй буквы фамилии включают комбинацию символов «етр».
Select * From Student Where Fios Like “?етр*”
8.Составить список студентов, поступавших в институт в 2000, 2003 и 1999 году.
Select FIOS From Student Where YearEnter In (2000,2003, 1999)
9.Выдать список студентов, имеющих положительные оценки.
Select Student.FIOS, Student.Nzach From Student, Ekzamen Where Ekzamen.CodeOcen Between 3 And 5 And Student.Nzach = Ekzamen.Nzach
10.Выдать список студентов по алфавиту.
Select * From Student Order By FIOS
11.Выдать список студентов по убыванию годов их поступления, отсортировав их по алфавиту для каждого года.
Select * From Student Order By YearEnter Desc, FIOS
12. Определить общее количество студентов.
Select Count (*) From Student
13.Определить среднее количество студентов в группах по факультетам.
Select SFacult, Avg(QStud) From Group Group By Sfacult
14.Определить средний балл для каждого студента.
Select Student.FIOS, Avg(Ekzamen.CodeOcen) From Student, Ekzamen Where Student.Nzach = Ekzamen.Nzach Group BY Student.FIOS Order By Student.FIOS
15.Определить студентов, имеющих средний балл больший трех с половиной.
Select Student.FIOS, Avg(Ekzamen.CodeOcen) From Student, Ekzamen Where Student.Nzach = Ekzamen.Nzach Group BY Student.FIOS Having Avg (Ekzamen.CodeOcen) > 3.5 Order By Student.FIOS
16.Создать таблицу, в которой хранятся данные о не аттестованных студентах.
Select * Into BadStudent From Ekzamen Where Ekzamen.CodeOcen = 0
17.Добавить в таблицу BadStudent информацию о двоечниках
Insert Into BadStudent Select * From Ekzamen Where Ekzamen.CodeOcen = 2
18.Удалить из таблицы BadStudent информацию о двоечниках
Delete From BadStudent Where CodOcen = 2
19.Заменить в таблице студент год поступления, оставив в нем только две последние цифры.
Update Student Set YearEnter = Int(Mid(Str(YearEnter), 3, 2))
20.Составить список экзаменов, принимавшихся преподавателем Ивановым М.М.
Select Nved, DataEkz From Vedom Where CodePrep =
(Select CodePrep From Prep Where FIOP = “Иванов М.М.”)
21.Составить список студентов, сдававших экзамен 22.06.03.
Select Sgroup, Nzach, Fios From Student Where Nzach In
(Select Nzach From Vedom Where DataEkz = # 22.06.03 )
22.Составить перечень факультетов и групп на этих факультетах, , в которых меньше студентов, чем в группах АП.
Select Sfacult, Sgroup From Group Where Qstud < Any (Select Qstud From Group Where Sgroup Like “АП”)
Задание. Составить запросы на SQL, формулировка которых дана на предыдущих занятиях для QBE.