Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Многотабличные запросы

Многотабличные запросыМноготабличные запросы — это основа любой операции СУБД. Они позволяют комбинировать информацию множеством способов в результирующий набор данных, следуя правилам бизнес-логики.

Объединение таблиц — одна из наиболее важных концепций в мире SQL, и к ней нельзя относиться легкомысленно. Существует множество разных типов объединений, которые условно можно разделить на две широкие категории: внутренние и внешние. Условием объединения таблиц может быть как равенство, так и неравенство (больше, меньше и т. д.), в зависимости от того, какие столбцы использованы в сравнении. Таблицы — не единственные объекты, которые можно объединять в запросе; в нем можно также использовать представления, как обычные, так и внедренные. Для получения результирующего набора данных может быть использован широкий арсенал средств языка SQL: операторы, функции и подзапросы. Для повышения производительности запросов, содержащих множество объединений, может быть реализована система подсказок. Эти подсказки специфичны для конкретных СУБД и не являются частью стандарта SQL. ГЛАВ Функции SQL серьезно облегчают жизнь программистов и в некоторой степени вносят элемент процедурности в изначально основанный на множествах язык SQL. Сам запрос предназначен для извлечения информации, а функции, в нем задействованные, — для проверки и преобразования данных, выполнения вычислений, получения системной информации и других целей.

Функции SQL лучше всего рассматривать как средство выполнения отдельных узкоспециализированных задач, к примеру вычисления квадратного корня или преобразования строчных букв в прописные. В запросах SQL функции вызываются по своему имени, которое обычно состоит из одного ключевого слова. Функции вызываются в запросе для Каждой строки результирующего набора данных. Одни функции имеют аргументы, другие — нет. От прочих выполняемых модулей СУБД их отличает то, что они всегда возвращают значение. Ранее уже говорилось, что SQL не является процедурным языком (по крайней мере, без SQL/PCM). В нем отсутствуют процедурные средства, управляющие последовательностью выполнения команд, такие как циклы и условные переходы, однако функции в некоторой мере компенсируют этот недостаток.