Инфоурок / Другое / Другие методич. материалы / Практическое занятие по МДК 02.02. Технология разработки и защиты баз данных на тему "Создание запросов с помощью операторов соединений"
Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.

Педагогическая деятельность в соответствии с новым ФГОС требует от учителя наличия системы специальных знаний в области анатомии, физиологии, специальной психологии, дефектологии и социальной работы.

Только сейчас Вы можете пройти дистанционное обучение прямо на сайте "Инфоурок" со скидкой 40% по курсу повышения квалификации "Организация работы с обучающимися с ограниченными возможностями здоровья (ОВЗ)" (72 часа). По окончании курса Вы получите печатное удостоверение о повышении квалификации установленного образца (доставка удостоверения бесплатна).

Автор курса: Логинова Наталья Геннадьевна, кандидат педагогических наук, учитель высшей категории. Начало обучения новой группы: 27 сентября.

Подать заявку на этот курс    Смотреть список всех 216 курсов со скидкой 40%

Практическое занятие по МДК 02.02. Технология разработки и защиты баз данных на тему "Создание запросов с помощью операторов соединений"

библиотека
материалов

Практическое занятие №6

Создание запросов с помощью операторов соединений. Объединение результатов выборки

Цель занятия: научиться извлекать данные из нескольких таблиц с помощью операторов соединений, объединять результаты выборки.

Теоретические сведения

С помощью раздела FROM определяются источники данных, с которыми будет работать запрос. Синтаксис раздела FROM следующий:

FROM { <Источник_данных> } [,...,n]

На первый взгляд конструкция раздела выглядит простой.Однако при ближайшем рассмотрении он оказывается довольносложным. В основном работа с разделом FROM — это перечисление через запятую источников данных, с которыми должен работать запрос. Собственно источник данных указывается с помощью предложения <Источник_данных>, синтаксис которогоследующий:

<Источник_данных> ::= <имя_таблицы> [ [AS] <псевдоним_таблцы>]|<связка_таблиц>

С помощью параметра <имя_таблицы> указывается имяобычной таблицы. Параметр <псевдоним_таблицы> используется для присвоения таблице псевдонима, под которым на неенужно будет ссылаться в запросе. Часто псевдонимы таблицприменяют, чтобы ссылку на нужную таблицу сделать болееудобной и короткой. Например, если в запросе часто упоминается имя таблицы «Учебный план», то можно воспользоватьсяпсевдонимом, например, tpl. Указание ключевого слова AS неявляется при этом обязательным. Конструкция <связка_таблиц> реализует один из наиболеесложных методов задания источника данных. С помощью нееможно связать данные двух и более таблиц в единый набор данных, указав критерии связывания. Синтаксис конструкции<связка_таблиц> следующий:

<связка_таблиц> ::= <левая_таблица> <тип_связывания> <правая_таблица>ON <условие_связывания>

Конструкция <тип_связывания> описывает тип связываниядвух таблиц. Исходная таблица указывается слева от конструкции <тип_связывания> (<левая_таблица>), а справа указываетсязависимая таблица (<правая_таблица>). Общий синтаксис конструкции <тип_связывания> следующий:

<тип_связывания> ::= [INNER | {{LEFT | RIGHT | FULL }[OUTER] } ] JOIN

Как видно, обязательным в конструкции является ключевоеслово JOIN. Конструкция ON <условие_связывания> задает логическоеусловие связывания двух таблиц. Допустимы операторы сравнения (например, =, <, >, <=, >=, !-, <>). Чаще всего используется оператор равенства, например: ON Учебный_план.ID_Дисциплина =Дисциплины.ID_Дисциплина. В этом примере устанавливается связь между таблицами«Учебный план» и «Дисциплина» по столбцу ID_Дисциплина,имеющемуся в каждой из таблиц.

Раздел WHERE может быть использован для связываниятаблиц. В этом случае условие связывания должно присоединяться к логическому выражению с помощью логической операции AND (логическое умножение). Рассмотрим пример, уточняющий один из представленныхвыше:

SELECT Наименование, Семестр, Количество_часов

FROM Учебный_план INNER JOIN Дисциплины ONУчебный_план.ID_Дисциплина =Дисциплины. ID_Дисциплина

WHERE (Количество_часов > 60) AND (Семестр = 1)

Перенесем условие связывания в логическое выражение:

SELECT Наименование, Семестр, Количество_часов

FROM Учебный_план, Дисциплины

WHERE (Учебный_план. ID_Дисциплина =Дисциплины. ID_Дисциплина) AND(Количество_часов > 60) AND (Семестр = 1)

Ход работы

Вариант 1

  1. Получите название дисциплин учебного плана с количеством часов от 20 до 40;

  2. Создайте запрос для формирования экзаменационной ведомости группы студентов по Дисциплине учебного плана;

  3. Создайте запрос позволяющий сформировать листок зачетной книжки студента по результатам сдачи экзаменов;

  4. Создайте запрос, позволяющий получить сводную таблицу «Сессия» (ФИО студента, семестр, дисциплина, форма отчетности, оценка, количество часов, ФИО преподавателя).

  5. Получите название дисциплин, семестр и количество часов, которые изучаются в первом семестре с количеством часов больше 60, используя связывание таблиц в разделе WHERE.

  6. Постройте запрос, который выбирает всех студентов и преподавателей, телефоны которых имеют цифры 120, используя раздел UNION. Отсортируйте список по алфавиту.

  7. С помощью команды SELECTINTO, разделите таблицу «Кадровый состав» на две выделив в отдельную таблицу «Контакты» адреса и телефоны.

  8. Создайте таблицу «Студент_2000» и поместите в нее результат выборки из таблицы Студенты обо всех студентах поступивших в ВУЗ в 2000 г, используя конструкцию INSERT…INTO…SELECT.

  9. Сформулируйте запрос для добавления в структуру БД «Сессия» таблицы «Штатное расписание» с колонками: Должность, Разряд, Оклад, Коэффициент надбавки. Установите связь по внешнему ключу с таблицей «Кадровый состав».

  10. Используя новую таблицу «Штатное расписание», сформулируйте запрос для расчета зарплаты с учетом коэффициента надбавки.

Вариант 2

  1. Получите фамилии неуспевающих студентов;

  2. Создайте запрос для формирования зачетной ведомости группы студентов по Дисциплине учебного плана;

  3. Создайте запрос позволяющий сформировать листок зачетной книжки студента по результатам сдачи зачетов;

  4. Создайте запрос, позволяющий получить сводную таблицу «Сессия» (ФИО студента, семестр, дисциплина, форма отчетности, оценка, количество часов, ФИО преподавателя).

  5. Получите название дисциплин, семестр и отчетность, в названии дисциплины которых есть символы информатик, используя связывание таблиц в разделе WHERE.

  6. Постройте запрос, который выбирает всех студентов и преподавателей, которые живут на улице Ленина, используя раздел UNION. Отсортируйте список по алфавиту.

  7. С помощью команды SELECTINTO, разделите таблицу «Кадровый состав» на две выделив в отдельную таблицу «Должности» должность и кафедру.

  8. Поместите в новую таблицу «Преподаватель-профессор» информацию о преподавателях имеющих должность - профессор (данные о преподавателе ФИО, Должность), используя конструкцию INSERT…INTO…SELECT.

  9. Сформулируйте запрос для добавления в структуру БД «Сессия» таблицы «Стипендия» с колонками: ФИО студента, стипендия, дополнительная стипендия. Установите связь по внешнему ключу с таблицей «Студенты».

  10. Используя новую таблицу «Стипендия», сформулируйте запрос для расчета стипендии с учетом дополнительной стипендии.

Контрольные вопросы:

  1. Приведите синтаксис конструкции <Источник_данных> в разделе FROM.

  2. Приведите синтаксис конструкции <связка_таблиц> в разделе FROM.

  3. Приведите синтаксис конструкции <тип_связывания> в разделе FROM.

  4. Как работает конструкция INNER JOIN?

  5. Как работаю конструкции LEFT [OUTER] и RIGHT [OUTER]?

  6. Может ли раздел WHERE использоваться для связывания таблиц? Каким образом?



Самые низкие цены на курсы переподготовки

Специально для учителей, воспитателей и других работников системы образования действуют 50% скидки при обучении на курсах профессиональной переподготовки.

После окончания обучения выдаётся диплом о профессиональной переподготовке установленного образца с присвоением квалификации (признаётся при прохождении аттестации по всей России).

Обучение проходит заочно прямо на сайте проекта "Инфоурок", но в дипломе форма обучения не указывается.

Начало обучения ближайшей группы: 27 сентября. Оплата возможна в беспроцентную рассрочку (10% в начале обучения и 90% в конце обучения)!

Подайте заявку на интересующий Вас курс сейчас: https://infourok.ru

Общая информация

Номер материала: ДБ-322808

Похожие материалы

2017 год объявлен годом экологии и особо охраняемых природных территорий в Российской Федерации. Министерство образования и науки рекомендует в 2017/2018 учебном году включать в программы воспитания и социализации образовательные события, приуроченные к году экологии.

Учителям 1-11 классов и воспитателям дошкольных ОУ вместе с ребятами рекомендуем принять участие в международном конкурсе «Законы экологии», приуроченном к году экологии. Участники конкурса проверят свои знания правил поведения на природе, узнают интересные факты о животных и растениях, занесённых в Красную книгу России. Все ученики будут награждены красочными наградными материалами, а учителя получат бесплатные свидетельства о подготовке участников и призёров международного конкурса.

Конкурс "Законы экологии"