Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование и разработка баз данных. Лаборат...doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
3.07 Mб
Скачать

Выборка данных – select

SELECT (имена столбцов или *)

FROM (имена таблиц, разделенные запятыми, если таблиц больше, чем одна)

WHERE (условия)

Листинг 15. Чтение заданных столбцов из одиночной таблицы

SELECT Название, Отдел, МаксТрудозатраты

FROM ПРОЕКТ;

Листинг 16. Удаление одинаковых строк – DISTINCT

SELECT DISTINCT Отдел

FROM ПРОЕКТ;

Листинг 17. Чтение заданных строк из одиночной таблицы

SELECT ИдПроекта, Название, Отдел, МаксТрудозатраты

FROM ПРОЕКТ

WHERE Отдел = 'Финансы';

Листинг 18

SELECT *

FROM ПРОЕКТ

WHERE Отдел = 'Финансы' AND МаксТрудозатраты > 100;

Листинг 19

SELECT Имя, Телефон, Отдел

FROM СОТРУДНИК

WHERE Отдел IN ('Бухгалтерия', 'Финансы', 'Маркетинг');

Диапазоны, специальные символы и пустые значения в предложениях WHERE

Листинг 20

SELECT Имя, Отдел

FROM СОТРУДНИК

WHERE ТабельныйНомер BETWEEN 200 AND 500;

Листинг 21

SELECT *

FROM ПРОЕКТ

WHERE Имя LIKE 'KB_ Анализ портфеля';

Листинг 22

SELECT *

FROM СОТРУДНИК

WHERE Телефон LIKE '285-____';

Листинг 23

SELECT *

FROM СОТРУДНИК

WHERE Телефон LIKE '285%';

Листинг 24

SELECT Имя, Отдел

FROM СОТРУДНИК

WHERE Телефон IS NULL;

Сортировка результатов

Листинг 25

SELECT Имя, Отдел

FROM СОТРУДНИК

ORDER BY Отдел DESC, Имя ASC;

Встроенные функции SQL

Cледующий оператор недопустим:

Листинг 26

SELECT Название, SUM(МакТрудозатраты)

FROM ПРОЕКТ

WHERE ИдПроекта<1500;

Зато допустим оператор:

Листинг 27

SELECT Отдел, COUNT(*)

FROM СОТРУДНИК

GROUP BY Отдел;

Листинг 28

SELECT Отдел, COUNT(*)

FROM СОТРУДНИК

GROUP BY Отдел

HAVING COUNT(*) > 1;

Листинг 29

SELECT Отдел, COUNT(*)

FROM СОТРУДНИК

WHERE ТабельныйНомер < 600

GROUP BY Отдел

HAVING COUNT(*) > 1;

Листинг 30:

SELECT Имя, ФактТрудозатраты

FROM СОТРУДНИК, НАЗНАЧЕНИЕ

WHERE ТабельныйНомер = НомерСотрудника;

Листинг 31. Соединить информацию о проектах и назначениях.

SELECT Название, ФактТрудозатраты

FROM ПРОЕКТ, НАЗНАЧЕНИЕ

WHERE ПРОЕКТ.ИдПроекта = НАЗНАЧЕНИЕ.ИдПроекта;

Листинг 32. Альтернативный синтаксис соединения JOINON

SELECT Имя, ФактТрудозатраты

FROM СОТРУДНИК JOIN НАЗНАЧЕНИЕ

ON СОТРУДНИК.ТабельныйНомер = НАЗНАЧЕНИЕ.НомерСотрудника;