Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Установка значений по умолчанию




Пример. Создать таблицу STUDENT. Для столбца CITY установить значениие по умолчанию ’Воронеж’:

CREATE TABLE STUDENT

(STUDENT_ID INTEGER PRIMARY KEY,

SURNAME VARCHAR(60) NOT NULL,

NAME VARCHAR(60) NOT NULL,

STIPEND INTEGER CHECK (STIPEND<200),

KURS INTEGER,

CITY VARCHAR(60) DEFAULT ’Воронеж’,

BIRTHDAY DATE,

UNIV_ID INTEGER);

Задание 2.

  1. Создайте таблицу EXAM_MARKS так, чтобы не допускался ввод в таблицу двух записей об оценках одного студента по конкретным экзамену и предмету обучения, и чтобы не допускалось проведение двух экзаменов по любым предметам в один день.
  2. Создайте таблицу предметов обучения SUBJECT так, чтобы количество отводимых на предмет часов по умолчанию было равно 36, не допускались записи в отсутствующим количеством часов, поле SUBJ_ID являлось первичным ключом таблицы и значение семестров (поле SEMESTR) лежали в диапазоне от 1 до 12.
  3. Создайте таблицу EXAM_MARKS таким образом, чтобы значения поля EXAM_ID было больше значений поля SUBJ_ID, а значения поля SUBJ_ID было больше значений поля STUDENT _ID; пусть также будут запрещены значения NULL в любом из этих трех полей.

 

Выборка данных. Оператор SELECT

Синтаксис:

SELECT [DISTINCT] < список атрибутов>

FROM < список таблиц >

[WHERE <условие выборки>]

[ORDER BY <список атрибутов>]

[GROUP BY < список атрибутов >]

[HAVING < условие >]

[UNION < выражение с оператором SELECT>];

 

ü В квадратных скобках указаны элементы, которые могут отсутствовать в запросе.

ü Если необходимо вывести значения всех столбцов таблицы, то можно вместо перечисления их имен использовать символ «*»

ü Слово DISTINCT используется для исключения повторяющихся запросов.

ü Ключевое слово ALL, в отличии от DISTINCT, оказывает противоположное действие.

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

ü В задаваемых в предложении WHERE условиях могут использоваться операции сравнения, а также логические операторы AND, OR и NOT.

 

Запросы

  1. Вывести все имена и фамилии из таблицы STUDENT:

SELECT NAME, SURNAME

FROM STUDENT;

  1. Вывести всю таблицу STUDENT:

SELECT *

FROM STUDENT;

  1. Получить список названий городов, где проживают студенты, сведения о которых находятся в таблице STUDENT:

SELECT CITY

FROM STUDENT;

  1. Исключить из результата предыдущего запроса повторяющиеся записи:

SELECT DISTINCT CITY

FROM STUDENT;

  1. Выбрать всех студентов с фамилией Петров:

SELECT NAME, SURNAME

FROM STUDENT

WHERE SURNAME= «Петров»;

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

SELECT NAME, SURNAME

FROM STUDENT

WHERE KURS=3 AND STIPEND>0;

Задание 3.

  1. Напишите запрос для вывода идентификатора (номера) предмета обучения, его наименования, семестра, в котором он читается, и количества отводимых на него часов для всех строк таблицы SUBJECT.
  2. Напишите запрос, позволяющий вывести все строки таблицы EXAM_MARKS, в которых предмет обучения имеет номер (SUBJ_ID), равный 12.
  3. Напишите запрос, выбирающий в се данные из таблицы STUDENT, расположив столбцы таблицы в следующем порядке: KURS, SURNAME, NAME, STIPEND.
  4. Напишите запрос SELECT, который выполняет вывод наименований предметов обучения (SUBJ_NAME) и следом за ним количества часов (HOUR) для каждого предмета обучения (SUBJECT) в 4-м семестре (SEMESTR).
  5. Напишите запрос, позволяющий получить из таблицы EXAM_MARKS значения столбца MARK (экзаменационная оценка) для всех студентов, исключив из списка повторение одинаковых строк.
  6. Напишите запрос, который выполняет вывод списка фамилий студентов, обучающихся на третьем и более старших курсах.
  7. Напишите запрос, выбирающий данные о фамилии, имени и номере курса для студентов, получающих стипендию больше 140.
  8. Напишите запрос, выполняющий выборку из таблицы SUBJECT названий всех предметов обучения, на которые отводится более 30 часов.
  9. Напишите запрос, который выполняет вывод списка университетов, рейтинг которых превышает 300 баллов.
  10. Напишите запрос к таблице STUDENT для вывода списка фамилий (SURNAME), имен (NAME) и номера курса (KURS) всех студентов со стипендией большей или равной 100, и живущих в Москве.
  11. Какие данные будут получены в результате выполнения запроса?

SELECT * FROM STUDENT

WHERE (STIPEND < 100 OR NOT (BIRTHDAY >= ‘10/03/1980’ AND STUDENT_ID > 1003));

  1. Какие данные будут получены в результате выполнения запроса?

SELECT * FROM STUDENT

WHERE NOT ((BIRTHDAY = ‘10/03/1980’ OR STIPEND > 100) AND STUDENT_ID > = 1003);

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...