русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Аналитическая выборка данных


Дата добавления: 2013-12-24; просмотров: 1452; Нарушение авторских прав


Объединение нескольких наборов результатов

Перекрестные соединения

При таком соединении выводятся все комбинации записей таблиц, при этом не требуется указание совпадающих значений полей, поэтому условие ON опускается.

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

Например, с помощью перекрестного соединения можно перечислить все возможные способы поставки товаров в базе данных Northwind (поставлялась с MS SQL Server до появления AdventureWorks):

 

SELECT DISTINCT Suppliers.Country, Orders.ShipCountry

from Suppliers CROSS JOIN Orders

Оператор UNION объединяет результаты двух и более операторов SELECT и применяется в случае, когда данные нельзя получить при помощи одного запроса.

Для получения единого итогового набора данных необходимо написать отдельные операторы SELECT и объединить их при помощи оператора UNION, при этом, в отличие от соединения, записи в итоговый набор добавляются друг за другом:

 

SELECT ...

UNION [ALL]

SELECT ...

[,...]

 

По умолчанию повторяющиеся записи удаляются, для получения всех записей необходимо указать ключевое слово ALL. Необходимо также учитывать, что список полей, порядок и все их свойства должны быть одинаковы во всех используемых запросах.

Имена полей итогового набора берутся из первого запроса, поэтому создание псевдонимов полей выполняется в нем. Для получения отсортированного набора данных раздел ORDER BY указывается после последнего оператора SELECT.

 

 

 

Аналитическая выборка данных из базы данных опирается на возможности Transact-SQL создавать запросы, неразрывно связанных с агрегатными функциями:



· Avg ([all | distinct] выражение) – среднее арифметическое всех значений.

· Count ([all | distinct] выражение | *) – количество значений в списке, отличных от NULL. При использовании символа * подсчитывается количество значений, включая значения NULL или повторяющиеся значения.

· Sum ([all | distinct] выражение) – сумма всех значений списка.

· Max ([all | distinct] выражение) –максимальное значение.

· Min ([all | distinct] выражение) – минимальное значение.

 

Ключевое слово all предписывает выполнять агрегирование всех записей в результирующем наборе данных, distinct – агрегирование только уникальных записей. По умолчанию используется all.

Например, вычисление средней цены товаров осуществляется с помощью следующего запроса:

 

SELECT AVG(ListPrice) FROM Production.Product

 

При выполнении агрегатной функции осуществляется объединение значений отдельного поля таблицы или части записей, после чего выполняется указанное агрегирование.

Агрегатная функция возвращает одно единственное значение, поэтому использование других имен полей в списке выборки запрещено.

 



<== предыдущая лекция | следующая лекция ==>
Внешнее соединение | Подзапросы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.092 сек.