
- •Пояснительная записка к курсовому проекту по дисциплине «Базы данных» «информационная система спортивных организаций города» в субд access
- •1. Введение
- •2. Постановка задачи
- •2.1. Описание предметной области
- •3.3. Состав атрибутов и сущностей (fa – уровень)
- •4. Глоссарий модели
- •5. Физическое проектирование
- •6. Заключение
5. Физическое проектирование
5.1. Получить перечень спортивных сооружений указанного типа в целом или удовлетворяющих заданным характеристикам (например, стадионы, вмещающие не менее указанного числа зрителей):
SELECT [Спортивные сооружения].[Название сооружения], [Спортивные сооружения].Вместимость, [Спортивные сооружения].[Тип сооружения], [Спортивные сооружения].[Тип покрытия]
FROM [Спортивные сооружения]
GROUP BY [Спортивные сооружения].[Название сооружения], [Спортивные сооружения].Вместимость, [Спортивные сооружения].[Тип сооружения], [Спортивные сооружения].[Тип покрытия]
HAVING ((([Спортивные сооружения].[Тип сооружения])=[Введите тип сооружения:]));
5.2. Получить список спортсменов, занимающихся указанным видом спорта в целом либо не ниже определенного разряда:
SELECT [Виды спорта и разряды].[Код спортсмена], [Виды спорта и разряды].[Вид спорта], [Виды спорта и разряды].Разряд
FROM [Виды спорта и разряды]
WHERE ((([Виды спорта и разряды].[Вид спорта])=[Введите вид спорта:]) AND (([Виды спорта и разряды].Разряд)>="2"));
5.3. Получить список спортсменов, тренирующихся у некого тренера в целом либо не ниже определенного разряда:
SELECT [Виды спорта и разряды].[Код спортсмена], [Виды спорта и разряды].Разряд, Тренера.Фамилия, Тренера.Имя
FROM Тренера INNER JOIN [Виды спорта и разряды] ON Тренера.[Код тренера] = [Виды спорта и разряды].[Код тренера]
WHERE (((Тренера.Фамилия)=[Введите фамилию тренера:]) AND ((Тренера.Имя)=[Введите имя тренера:]));
5.4. Получить список спортсменов, занимающихся более чем одним видом спорта с указанием этих видов спорта:
SELECT [Виды спорта и разряды].[Код спортсмена], [Виды спорта и разряды].[Вид спорта]
FROM [Виды спорта и разряды]
WHERE ((([Виды спорта и разряды].[Код спортсмена]) In (SELECT [Код спортсмена] FROM [Виды спорта и разряды] As Tmp GROUP BY [Код спортсмена] HAVING Count(*)>1 )))
ORDER BY [Виды спорта и разряды].[Код спортсмена];
5.5. Получить список тренеров указанного спортсмена:
SELECT [Спортсмены города].Фамилия, [Спортсмены города].Имя, [Виды спорта и разряды].[Код тренера]
FROM [Спортсмены города] INNER JOIN [Виды спорта и разряды] ON [Спортсмены города].[Код спортсмена] = [Виды спорта и разряды].[Код спортсмена]
GROUP BY [Спортсмены города].Фамилия, [Спортсмены города].Имя, [Виды спорта и разряды].[Код тренера]
HAVING ((([Спортсмены города].Фамилия)=[Введите фамилию спортсмена:]) AND (([Спортсмены города].Имя)=[Введите имя спортсмена:]));
5.6. Получить перечень соревнований, проведенных в течение заданного периода времени в целом либо указанным организатором:
SELECT [Соревнования города].[Тип соревнований], [Соревнования города].[Дата проведения], [Соревнования города].Организатор
FROM [Соревнования города]
WHERE ((([Соревнования города].Организатор)=[Введите организатора:]));
5.7. Получить список призеров указанного соревнования:
SELECT [Соревнования города].[Тип соревнований], [Соревнования\Спортсмены].[Код спортсмена], [Соревнования\Спортсмены].[Призовое место]
FROM [Соревнования города] INNER JOIN [Соревнования\Спортсмены] ON [Соревнования города].[Код соревнования] = [Соревнования\Спортсмены].[Код соревнования]
WHERE ((([Соревнования города].[Тип соревнований])=[Введите тип соревнования]));
5.8. Получить перечень соревнований, проведенных в указанном спортивном сооружении в целом либо по определенному виду спорта:
SELECT [Соревнования города].[Тип соревнований], [Спортивные сооружения].[Название сооружения], [Соревнования города].[Дата проведения]
FROM [Спортивные сооружения] INNER JOIN [Соревнования города] ON [Спортивные сооружения].[Код сооружения] = [Соревнования города].[Код сооружения]
WHERE ((([Спортивные сооружения].[Название сооружения])=[Введите название спортивного сооружения:]));
5.9. Получить перечень спортивных клубов и число спортсменов этих клубов, участвовавших в спортивных соревнованиях в течение заданного интервала времени:
SELECT [Виды спорта и разряды].[Код спортсмена], [Спортсмены города].Клуб, [Соревнования города].[Дата проведения]
FROM ([Спортсмены города] INNER JOIN [Виды спорта и разряды] ON [Спортсмены города].[Код спортсмена] = [Виды спорта и разряды].[Код спортсмена]) INNER JOIN ([Соревнования города] INNER JOIN [Соревнования\Спортсмены] ON [Соревнования города].[Код соревнования] = [Соревнования\Спортсмены].[Код соревнования]) ON [Спортсмены города].[Код спортсмена] = [Соревнования\Спортсмены].[Код спортсмена]
GROUP BY [Виды спорта и разряды].[Код спортсмена], [Спортсмены города].Клуб, [Соревнования города].[Дата проведения]
HAVING ((([Соревнования города].[Дата проведения]) Between [Введите первый промежуток даты:] And [Введите второй промежуток даты:]));
5.10. Получить список тренеров по определенному виду спорта:
SELECT [Виды спорта и разряды].[Код тренера], [Виды спорта и разряды].[Вид спорта]
FROM [Виды спорта и разряды]
GROUP BY [Виды спорта и разряды].[Код тренера], [Виды спорта и разряды].[Вид спорта]
HAVING ((([Виды спорта и разряды].[Вид спорта])=[Введите вид спорта:]));
5.11. Получить список организаторов соревнований и число проведенных ими соревнований в течение определенного периода времени:
SELECT [Соревнования города].Организатор, Count([Соревнования города].[Код соревнования]) AS [Count-Код соревнования]
FROM [Соревнования города]
GROUP BY [Соревнования города].Организатор;
5.12. Получить перечень спортивных сооружений и даты проведения на них соревнований в течение определенного периода времени:
SELECT [Спортивные сооружения].*, [Соревнования города].[Дата проведения]
FROM [Спортивные сооружения] INNER JOIN [Соревнования города] ON [Спортивные сооружения].[Код сооружения] = [Соревнования города].[Код сооружения]
WHERE ((([Соревнования города].[Дата проведения]) Between [Введите первый промежуток даты:] And [Введите второй промежуток даты:]));