SQL позволяет получить ответы на эти запросы посредством многотабличных запросов, которые объединяют данные из нескольких таблиц.
Составить список всех сотрудников, работающих в Минском отделении.
select fname, lname, position, S.tel_no
from Branch B, Staff S
where B.bno=S.bno and city = ‘Минск’;
Определитель NULL - указывает, что значение атрибута в настоящий момент неизвестно.
Даже в случае если запрос возвращает ноль строк, его результат считается таблицей. В этом случае таблица, содержит некоторое количество столбцов и ноль строк. Поддержка отсутствующих данных в SQL распространяется и на результаты запроса. Если один из элементов данных в исходной таблице имеет значение NULL, то оно попадет в результаты запроса при извлечении этого элемента
Многотабличные запросы и их особенности (привести пример).
SQL позволяет получить ответы на эти запросы посредством многотабличных запросов, которые объединяют данные из нескольких таблиц.
Составить список всех сотрудников, работающих в Минском отделении.
select fname, lname, position, S.tel_no
from Branch B, Staff S
where B.bno=S.bno and city = ‘Минск’;
SQL> select name,sn ,place from main1 b,ship c where b.wno=c.wno and place='China';
Вначале просматривается таблица ship и фильтруются строки где place = china
Внешний ключ табл main1 и первичный ключ табл ship должны совпадать
Как уже было отмечено выше, с увеличением количества таблиц в запросе резко возрастает объем работы, необходимой для выполнения запроса. Хотя ограничений на количество объединяемых таблиц нет, на практике высокие затраты на обработку многотабличных запросов во многих приложениях накладывают серьёзные ограничения на использование многотабличных запросов
В приложениях, предназначенных для оперативной обработки транзакций (OLTP), запрос обычно ссылается только на одну или две таблицы. В этих приложениях время ответа является критичной величиной, пользователь, как правило, вводит один или два элемента данных, и ему требуется получить ответ от базы данных в течение одной или двух секунд.
В отличие от OLTP-приложений, в приложениях, предназначенных для поддержки, принятия решений, запрос, как правило, обращается ко многим таблицам и использует сложные отношения, существующие в базе данных. В этих приложениях результаты запроса часто нужны для принятия важных решений, поэтому вполне приемлемыми считаются запросы, которые выполняются несколько минут или в течение большего времени.
Предложение GROUP BY. Статистические (агрегативные) функции в SQL (примеры).