Теория экономических информационных систем


Теория экономических информационных систем - стр. 33


ORDER BY [Средний балл] DESC;

Используемое число в предикате TOP должно быть целым без знака.

Операция объединения INNER JOIN

Операция формирует связь эквивалентности, являясь частью параметра FROM Такая связь является наиболее употребительным типом объединения. Объединение производится при условии равенства содержимого полей, приведенных после ключевого слова ON в записях таблиц, указанных в операции INNER JOIN. Записи их двух таблиц объединяются при обнаружении совпадающих значений в указанных полях. Такое объединение записей используется наиболее часто.

 

ТАБЛИЦА 1 INNER JOIN ТАБЛИЦА 2

ON ТАБЛИЦА 1.Поле А = ТАБЛИЦА 2.Поле В

 

В данном случае устанавливается связь между ТАБЛИЦА 1 и ТАБЛИЦА 2. В выходной набор будут включены записи из этих таблиц при условии равенства содержимого: ТАБЛИЦА 1.Поле А = ТАБЛИЦА 2.Поле В.

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

Директива GROUP BY

При использовании директивы GROUP BY все записи, содержащие в заданном  поле идентичные значения, объединяются в один элемент выходного набора. В нашем примере повторяющиеся имена фирм будут включены в выходной набор только один раз. Используя параметр GROUP BY, необходимо учитывать, что этот параметр не является обязательным, а является уточняющим при использовании параметра FROM и WHERE.

SELECT [Название товара], Sum([Стоимость товара])

FROM Товары

GROUP BY [Название товара];

Директива HAVIHG

Эта директива используется для фильтрации записей после группирования только в случае использования в запросе директивы GROUP BY.

Отличие WHERE и HAVING

Директива WHERE определяет, какие записи данных должны участвовать в группировании, т. е. фильтрует записи до группировки. HAVING oпределяет, какие из получившихся в результате группировки записи будут включены в результирующую выборку, т. е. фильтрует записи после группирования.

SELECT Отдел, Count([Отдел])

FROM Сотрудники

GROUP BYОтдел

HAVING Count(Отдел)>50;




Начало  Назад  Вперед