Сборник упражнении по стандарту sql




НазваниеСборник упражнении по стандарту sql
страница6/7
Дата02.10.2012
Размер1.02 Mb.
ТипДокументы
1   2   3   4   5   6   7
Список групп (название таблицы Groups)



Название поля

Тип поля

Описание поля

Code group

Integer

Код группы

Name group

Character

Название группы

Num course

Integer

Номер курса

Name_speciality

Character

Название специальности

Таблица 13 Справочник студентов (название таблицы Students)



Название поля

Тип поля

Описание поля

Code stud

Character

Номер зачетной книжки

Surname

Character

Фамилия студента

Name

Character

Имя студента

Lastname

Character

Отчество студента

Code group

Integer

Код группы

Birthday

Date

Дата рождения студента

Phone

Numeric

Контактный телефон студента

Таблица 14 Справочник изучаемых дисциплин (название таблицы Subjects)



Название поля

Тип поля

Описание поля

Code subject

Integer

Код дисциплины

Name subject

Character

Название дисциплины

Count hours

Integer

Количество часов в курсе

Таблица 15 Таблица успеваемости (название таблицы Progress)



Название поля

Тип поля

Описание поля

Code stud

Character

Номер зачетной книжки

Code subject

Integer

Код дисциплины

Code lector

Integer

Код преподавателя

Date exam

Date

Дата сдачи экзамена

Estimate

Integer

Оценка

Code_progress

Integer

Ключевое поле

Таблица 16 Справочник преподавателей (название таблицы Lectors)



Название поля

Тип поля

Описание поля

Code lector

Integer

Код преподавателя

Name lector

Character

Фамилия, имя, отчество преподавателя

Science

Character

Ученая степень

Post

Character

Должность

Date

Date

Дата приема на работу

35

2.4. Упражнения с использованием операторов обработки данных для БД «Успеваемость студентов»

Сортировка

  1. Вывести все сведения о студентах из таблицы Students и отсортировать результат по коду студента (поле Codestud).

  2. Вывести список фамилий, имен, отчеств преподавателей (поле Namelector), их должности (поле Post) и ученые степени (поле Science) из таблицы Lectors, отсортировать результат по названиям должностей по возрастанию (использовать поле Post) и по ученым степеням по убыванию (использовать поле Science).

  3. Выбрать из таблицы Groups названия групп и номера курсов (поля Namegroup, Namecourse) и отсортировать результат по полю Namecourse по убыванию.

Изменение порядка следования полей

  1. Вывести все сведения о студентах из таблицы Students таким образом, чтобы в результате порядок столбцов был следующим: Codegroup, Name, Surname, Lastname, Phone, Birthday.

  2. Выбрать все поля из таблицы Subjects таким образом, чтобы в результате порядок столбцов был следующим: Namesubject, Codesubject.

Выбор некоторых полей из двух таблиц

  1. Вывести список фамилий (поле Surname), имен (поле Name), отчеств (поле Lastname) студентов из таблицы Students и названий групп (поле Namegroup) из таблицы Groups, в которых они обучаются.

  2. Вывести даты экзаменов (поле Dateexam) из таблицы Progress и фамилии, имена, отчества преподавателей (поле Namelector) из таблицы Lectors, принимавших в эти даты экзамены.

  3. Вывести даты экзаменов (поле Dateexam) из таблицы Progress и названия дисциплин (поле Namesubject) из таблицы Subjects, по которым сдавали экзамены в указанные даты.

Условие неточного совпадения

  1. Вывести список преподавателей (поле Namelector) из таблицы Lectors с ученой степенью кандидат каких-либо наук, т.е. у которых значение поля Science начинается с 'к'.

  2. Вывести список студентов (поля Surname, Name, Lastname) из таблицы Students и названия групп (поле Namegroup) из таблицы Groups, значения которых начинаются с сочетания 'АС.

36 PDF created with pdfFactory Pro trial version www.pdffactorv.com

76. Вывести список дисциплин (поле Namesubject) из таблицы
Subjects, значение которых начинается с 'математ'.

Точное несовпадение значений одного из полей

  1. Вывести список преподавателей (поле Namelector) из таблицы Lectors и их должности (поле Post), которые не являются докторами технических наук, т.е. значение поля Science не равно 'д.т.н.'.

  2. Вывести список групп (поле Namegroup) из таблицы Groups, которые не относятся к специальности 'электротехника' (условие по полю Namespeciality).

  3. Вывести все сведения о всех предметах из таблицы Subjects, кроме предмета 'высшая математика' (условие по полю Namesubject).

Выбор записей по диапазону значений (Between)

  1. Вывести даты экзаменов (поле Dateexam) из таблицы Progress и список дисциплин (поле Namesubject) из таблицы Subjects, по которым сдавали экзамены в период с 01.01.2003 по 01.02.2003 (условие по полю Dateexam).

  2. Вывести список преподавателей (поле Namelector) из таблицы Lectors и их должности (поле Post), которые были устроены на работу в период с 12.03.2000 по 15.06.2000 (условие по полю Date_).

  3. Вывести список студентов (поля Surname, Name, Lastname) и их телефоны (поле Phone) из таблицы Students, если значения телефонов находятся в диапазоне от 220000 до 226666 (условие по полю Phone).

  4. Вывести список дисциплин (поле Namesubject) из таблицы Subjects, у которых название начинается на одну из букв диапазона 'В'-Т' (условие по полю Namesubject).

Выбор записей по диапазону значений (In)

  1. Вывести список групп и названия специальностей (поля Namegroup и Namespeciality из таблицы Groups), в которых учатся студенты со следующими номерами зачетной книжки 'АС-12-02', 'ПИ-14-03', 'АС-21-03', 'БИ-12-02' (условие по полю Codestud из таблицы Students).

  2. Вывести список преподавателей (поле Namelector) из таблицы Lectors и их должности (поле Post), у которых есть одна из следующих ученых степеней: 'к.т.н.', 'к.э.н.', 'д.т.н.' (условие по полю Science).

  3. Вывести список студентов (поля Surname, Name, Lastname) из таблицы Students, которые сдавали экзамены по дисциплинам со следующими кодами 5, 8, 12, 25 (условие по полю Codesubject).

37 PDF created with pdfFactory Pro trial version www.pdffactorv.com

Выбор записей с использованием Like

  1. Вывести список дисциплин (поле Namesubject) из таблицы Subjects, которые начинаются на букву 'М'.

  2. Вывести список студентов (поля Surname, Name, Lastname) и даты рождения (поле Birthday) из таблицы Students, которые содержат в фамилии сочетание букв 'нова' (условие по полю Surname).

  3. Выбрать список групп (поле Namegroup) из таблицы Groups, у которых значение оканчивается на '0' (ноль).

Выбор записей по нескольким условиям

  1. Вывести всех студентов (поля Surname, Name, Codegroup) из таблицы Students, которые сдавали экзамен по дисциплине (поле Namesubject из таблицы Subjects) 'математический анализ'.

  2. Вывести список преподавателей (поле Namelector) из таблицы Lectors, которые принимали экзамены по дисциплинам с кодами (условие по полю Codesubject из таблицы Progress) 5 - 12 и в период с 01.01.2003 по 01.02.2003 (условие по полю Dateexam из таблицы Progress).

  3. Вывести список групп (поле Namegroup) и номера курсов (поле Numcourse) из таблицы Groups, в которых учатся студенты с датами рождения с 01.01.1976 по 01.01.1978 (условие по полю Birthday из таблицы Students) и кодами из диапазона 10 - 150 (условие по полю Codestud из таблицы Students).

Многотабличные запросы (выборка из двух таблиц, выборка из трех таблиц с использованием JOIN)

  1. Вывести список названий дисциплин (поле Namesubject из таблицы Subjects) и имен преподавателей (поле Namelector из таблицы Lectors), которые принимали по этим дисциплинам экзамены.

  2. Вывести список студентов (поля Surname, Name из таблицы Students) и номер курса (поле Numcourse из таблицы Groups), учащихся в группе 'Ас-31' (условие по полю Namegroup).

  3. Вывести список имен преподавателей (поле Namelector из таблицы Lectors), которые принимали экзамены у студентов с кодами групп 10, 12, 15 (условие по полю Codegroup из таблицы Students).

  4. Вывести список названий дисциплин (поле Namesubject из таблицы Subjects) и имен преподавателей (поле Namelector из таблицы Lectors), которые принимали по этим дисциплинам экзамены в период с 15.01.2003 по 16.02.2003 (условие по полю Dateexam из таблицы Progress).

38 PDF created with pdfFactory Pro trial version www.pdffactorv.com

Вычисления

  1. Вывести список всех преподавателей (Namelector), их ученые степени (поле Science) и срок их работы в годах (использовать поле Date_ из таблицы Lectors).

  2. Вывести список всех студентов (поля Surname, Name, Lastname) и их возраст в годах (использовать поле Birthday из таблицы Students).

  3. Вывести список всех студентов (поля Surname, Name, Lastname из таблицы Students) и номер курса, на котором они занимаются, а также количество лет оставшейся учебы (использовать поле Numcourse из таблицы Groups).

Вычисление итоговых значений с использованием агрегатных функций

  1. Вывести список всех групп (поле Namegroup из таблицы Groups) и количество студентов в каждой группе (по любому полю из таблицы Students).

  2. Вывести средний балл (использовать поле Estimate из таблицы Progress) по результатам экзаменов каждого студента и имена студентов (поля Surname, Name из таблицы Students) за период сдачи экзаменов с 05.01.2003 по 25.01.2003 (условие по полю Dateexam из таблицы Progress).

  3. Вывести фамилии и имена студентов (поля Surname, Name из таблицы Students) с максимальным средним баллом за весь период обучения (условие по полю Estimate из таблицы Progress).

  4. Вывести все сведения о преподавателях (все поля таблицы Lectors) с максимальным общим стажем работы (использовать поле Date_).

Изменение наименований полей

  1. Вывести список групп (поле Namegroup из таблицы Groups) и количество студентов в каждой группе (по любому полю из таблицы Students), поместив результат в новое поле CountStudents.

  2. Вывести средний балл (использовать поле Estimate из таблицы Progress) по результатам экзаменов каждого студента, поместив результат в поле Avgestimate, и имена студентов (поля Surname, Name из таблицы Students) за период сдачи экзаменов 05.01.2003 по 25.01.2003 (условие по полю Dateexam из таблицы Progress).

  3. Вывести список преподавателей (Namelector), их ученые степени (поле Science) и срок их работы в годах (использовать поле Date_ из таблицы Lectors), поместив резльтат в поле Oldyears.

Использование переменных в условии

107. Вывести список студентов (поля Surname, Name, Lastname) и их
телефоны (поле Phone) из таблицы Students, если значения телефонов

39 PDF created with pdfFactory Pro trial version www.pdffactorv.com

находятся в диапазоне, хранящемся в переменных Phonebegin и Phoneend.

Например, пусть Phonebegin = 125478, a Phoneend = 352456.

108. Вывести все сведения о студентах и их даты рождения (поле
Birthday) из таблицы Students, значения которых находятся в диапазоне,
хранящемся в переменных Birthdaybegin и Birthdayend.

Например, пусть Birthdaybegin = 12.03.1978, a Birthdayend = 12.03.1980.

109. Вывести список студентов (поля Surname, Name, Lastname) и
названия их групп (поле Namegroup) для значений кодов групп (поле
Codegroup), находящихся в диапазоне, хранящемся в переменных
Groupbegin и Groupend.

Например, пусть Groupbegin = 12, a Groupend = 35.

Использование переменных вместо названий таблиц ПО. Вывести коды студентов (поле Codestud) и имена (поля Surname, Name), названия и коды групп (поля Namegroup, Codegroup из таблицы Groups), причем таблица Students будет использоваться с именем 'А', а таблица Groups будет использоваться с именем 'В'.

  1. Вывести имена студентов (поля Surname, Name), названия и коды предметов (поля Namesubject, Codesubject из таблицы Subjects), которые сдавали студенты, а также оценки за предметы (поле Estimate), причем таблица Students будет использоваться с именем 'А', таблица Progress будет использоваться с именем 'В', а таблица Subjects будет использоваться с именем 'С.

  2. Вывести имена студентов (поля Surname, Name), названия и коды преподавателей (поля Namelector, Codelector из таблицы Lectors), которым сдавали студенты экзамены, а также оценки за предметы (поле Estimate), причем таблица Students будет использоваться с именем 'А', таблица Progress будет использоваться с именем 'В', а таблица Lectors будет использоваться с именем 'С.

Выбор результата в курсор

  1. Вывести все сведения о сданных экзаменах (все поля из таблицы Progress) для студента с фамилией 'Васьков' и именем 'Павел' (условия по полям Surname, Name из таблицы Students) и поместить результат в курсор с названием Tempi.

  2. Вывести список групп и специальности (поля Namegroup, Namespeciality из таблицы Groups), у которых номер курса = 2 (условие по полю Numcourse), поместить результат в курсор с названием Тетр2.

  3. Вывести список всех изучаемых дисциплин (поле Namesubject из таблицы Subjects) и поместить результат в курсор с названием ТетрЗ.

40 PDF created with pdfFactory Pro trial version www.pdffactorv.com

Использование функций совместно с подзапросом

  1. Вывести список преподавателей (все поля из таблицы Lectors), дата устройства которых меньше средней даты устройства всех преподавателей в таблице (условие по полю Date_).

  2. Вывести все сведения о сдачах экзаменов (все поля из таблицы Progress) и список студентов (поля Surname, Name из таблицы Students), которые по таблице Progress сдавали экзамены самыми последними (дата сдачи экзаменов Dateexam максимальна).

  3. Вывести список групп (поле Namegroup), в которых студентов больше 25.

Использование квантора существования в запросах

  1. Вывести список студентов (поля Surname, Name, Lastname из таблицы Students), которые сдали все экзамены без двоек (подзапрос по таблице Progress).

  2. Вывести список студентов (поля Surname, Name, Lastname из таблицы Students), которые не сдавали ни одного экзамена (подзапрос по таблице Progress).

  3. Вывести список студентов (поля Surname, Name, Lastname из таблицы Students), которые сдали все экзамены на "отлично" (подзапрос по таблице Progress).

Оператор обработки данных Update

  1. Увеличить номер курса (поле Numcourse) у всех групп на единицу в таблице Groups, если системная дата равна значению «первое сентября нового учебного года».

  2. Изменить в таблице Students содержимое поля Lastname на 'нет сведений', если значение поля является пустым.

  3. Изменить в таблице Subjects значение поля Namesubject на 'математический анализ', если название дисциплины - 'высшая математика'.

Оператор обработки данных Insert

  1. Добавить в таблицу Student новую запись, причем так, чтобы код студента (по полю Codestud) был автоматически увеличен на единицу, а ФИО = 'Иванов' 'Павел' 'Сергеевич' (поля Surname, Name, LastName).

  2. Добавить в таблицу успеваемости Progress новую запись, вместо кода студента (поле Codestud) поставить 45, вместо кода предмета (поле

1   2   3   4   5   6   7

Похожие:

Сборник упражнении по стандарту sql iconЛабораторная работа Использование редактора запросов sql borland sql explorer(TM) для создания запросов к данным с использованием языка sql

Сборник упражнении по стандарту sql iconTeaching Oracle to Write sql*Plus (Or using sql as a Code Generator)

Сборник упражнении по стандарту sql iconСтруктурированных запросов sql в
...
Сборник упражнении по стандарту sql iconЛабораторная работа №1. Создание функций на pl/sql
Функции предназначены для использования в sql-предложениях, обращающихся к соответствующим отношениям. Они, по возможности, не должны...
Сборник упражнении по стандарту sql iconЛабораторная работа №5 посвящена оптимизации запросов и работе с индексами
Лабораторные работы заключаются в изучении языка sql. Работы выполняются в sql plus под управлением системы Oracle (версии не ниже...
Сборник упражнении по стандарту sql iconЭкзаменационные вопросы интернет-курсов интуит (intuit): 241. Проектирование информационных систем в Microsoft sql server 2008 и Visual Studio 2008
Если при создании новой пользовательской функции используется одна sql команда после служебного слова return, то в этом случае
Сборник упражнении по стандарту sql iconПро порядок організованого закінчення 2011/2012 навчального року та проведення
Державного стандарту початкової загальної освіти та Державного стандарту базової І повної середньої освіти
Сборник упражнении по стандарту sql icon2011/2012 навчального року та проведення державної підсумкової атестації учнів
Державного стандарту початкової загальної освіти та Державного стандарту базової І повної середньої освіти
Сборник упражнении по стандарту sql iconУкраїна харківська міська рада харківської області виконавчий комітет
Державного стандарту початкової загальної освіти та Державного стандарту базової І повної загальної середньої освіти
Сборник упражнении по стандарту sql iconКен Хендедерсон хотел написать самую лучшую из возможных книг практическое программирование на Transact-sql. Ему это удалось. Когда он начинал ее писать, в
Книга предназначена для программистов. Она написана, чтобы помочь разработчикам создавать приложения, которые используют Transact-sql....
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница