Delphi | Сети | ПК | Маршрутизаторы | Моделирование | Протоколы | Экспертные системы | Удаленный доступ | Доменные имена
Аплеты | SQL | Надежность | Задачи | Информационные процессы | JAVA | Отказы изделия | Расчет надежности показателей | Инфсис

Основные понятия и способы применения SQL - в примерах и задачах

SQL язык запросов к реляционным базам данных Учебник

Связанные подзапросы в HAVING

В разделе 2.4 указывалось, что предложение GROUP BY позво­ляет группировать выводимые SELECT-запросом записи по зна­чению некоторого поля. Использование предложения HAVING

позволяет при выводе осуществлять фильтрацию таких групп. Предикат предложения HAVING оценивается не для каждой строки результата, а для каждой группы выходных записей, сформированной предложением GROUP BY внешнего запроса.

Пусть, например, необходимо по данным из таблицы EXAM_MARKS определить сумму полученных студентами оценок (значений поля MARK), сгруппировав значения оценок по датам экзаменов и исключив те дни, когда число студентов, сдавав­ших в течение дня экзамены, было меньше 10.

SELECT EXAM_DATE, SUM (MARK)

FROM EXAM_MARKS A GROUP BY EXAM_DATE HAVING  10 <

(SELECT COUNT (MARK) FROM EXAM_MARKS В WHERE A.EXAM_DATE = В.EXAM_DATE) ;

Подзапрос вычисляет количество строк с одной и той же датой, совпадающей с датой, для которой сформирована оче­редная группа основного запроса.

Математический анализ, лекции по физике Компьютерные сети