Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Ограничение на список возвращаемых столбцов.
В запросе с группировкой все элементы списка возвращаемых столбцов должны иметь одно и то же значение для каждой группы слов. => В качестве элементов списка возвращаемых столбцов можно использовать константу, агрегатную функцию, столбец группировки, выражение, включающее в себя перечисленные выше элементы. Извлечение информации о количестве жителей с не 0-м общим доходом. В таблице результатов вывести номер жителя, ФИО, номер квартиры жителя и кол-во источников дохода. SELECT NOM, FIO, ADR, COUNT(ID) FROM PERSON, HEVE_D WHERE HEVE_D.NOM = PERSON.NOM GROUP BY NOM, FIO, ADR. Условия поиска групп и ограничения на эти условия. Они задаются в предложении HAVING и позволяют включить в конечную таблицу результатов информацию только об избранных группах. SELECT ADR FROM PERSON GROUP BY ADR HAVING COUNT(*) > 1. Ограничения на условия поиска групп Условия поиска, которые используются в предложении HAVING, применяются не к отдельным столбцам, а к группе в целом. В условие поиска может входить либо константа, либо агрегатная функция, либо столбец группировки, либо выражение, включающее вышеперечисленные элементы. SELECT RDATE, SUM(SUMD) FROM PERDON GROUP BY RDATE HAVING RDATE < ’11-DECEMBER-2000’ Вложенный запрос и его особенности. Пример. Вывести список жителей, у которых общий доход меньше размера самого доходного источника. SELECT NOM, FIO FROM PERSON WHERE SUMD < (SELECT MAX(MONEYS) FROM PROFIT). Вложенный запрос – оператор SELECT, заключенный в круглые скобки, и используемый в предложениях WHERE или HAVING. Отличия: 1. таблица результатов вложенного запроса всегда состоит из 1-го столбца. Список возвращаемых столбцов во вложенном запросе всегда должен иметь только 1 элемент. 2. во вложенный запрос не может входить предложение ORDER BY для экономии времени. 3. вложенный запрос не может быть запросом на объединение нескольких различных операторов SELECT. 4. особенность: имена столбцов используемых во вложенном запросе могут являться ссылками на столбцы главного или внешнего запроса. Внешние ссылки и связанные подзапросы. Пример. Определить адреса квартир, жители которых не могут оплачивать коммунальные услуги. (Стоимость коммунальных услуг определяется произведением 100 на площадь квартиры), жители могут оплачивать коммунальные услуги, если их общий доход не меньше, чем плата за коммунальные услуги.
SELECT * FROM FLAT WHERE SKV*100>=(SELECT SUM(SUMD) FROM PERSON WHERE PERSON.ADR = FLAT.ADR).
FLAT.ADR – внешняя ссылка, представляет собой имя столбца, принадлежащего таблице, указанной в предложении FROM главного запроса и не входящего ни в одну из главных таблиц, перечисленных в предложении FROM вложенного запроса. Если во вложенном запросе имеется внешняя ссылка, то такой запрос называется связанным. Особенностью является то, что он выполняется многократно: по одному разу для каждой строки таблицы, указанной в главном запросе. Процедура выполнения запроса, в составе которого имеется связанный подзапрос. 1) Выбрать строку из таблицы, имя которой указано в главном запросе. 2) Выполнить вложенный запрос с учетом значений, содержащихся в выбранной строке 3) Вычислить условия поиска главного запроса с учетом результатов вложенного запроса, выполненного на шаге 2. Если условие поиска – истина, то выбранная строка из таблицы главного запроса включается в таблицу результатов. Иначе выбранная стока не включается в таблицу результатов. 4) Повтор шагов 1-3 для строк таблиц или таблицы главного запроса, пока не будут проверены все строки. Условия поиска с вложенным запросом. Сравнение с результатом вложенного запроса. Проверка на принадлежность результатам вложенного запроса. Проверка на существование результатов вложенного запроса. Многократное сравнение.
|
|||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 83; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 44.200.145.114 (0.025 с.) |