русс | укр

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

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

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

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


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

FROM VIEWING


Дата добавления: 2014-02-04; просмотров: 714; Нарушение авторских прав


FROM OWNER INNER JOIN PROPERTY

SELECT OWNER.Owner_no, FName, LName

FROM PROPERTY

SELECT City, Street, House,Flat

FROM STAFF

Вложение запросов

ORDER BY STAFF.Branch_no DESC, STAFF.Staff_no;

GROUP BY STAFF.Branch_no, STAFF.Staff_no

Одни запросы могут быть размещены внутри других запросов. Обычно подчиненный запрос генерирует значение, которое проверяется в предикате внешнего запроса (в предложении WHERE или HAVING), определяющего верно оно или нет. Совместно с подзапросом можно использовать предикат EXISTS, который возвращает истину, если вывод подзапроса не пуст.

Часто бывает необходимо сравнивать значения в определенных столбцах со списком значений этого же столбца из другой таблицы или запроса. В подобных случаях используется ключевое слово IN (NOT IN).

Например, вывести список сотрудников, за которыми не закреплен ни один из объектов недвижимости.

 

SELECT *

WHERE Staff_no NOT IN (SELECT Staff_no FROM PROPERTY);

В подзапросах допускается использование агрегатных функций, например, для вывода списка трехкомнатных квартир, цена которых превышает среднюю цену трехкомнатной квартиры, используется запрос:

 

WHERE Rooms=3

AND Selling_Price >(SELECT AVG(Selling_Price) FROM Property

WHERE Rooms=3);

Вывести список владельцев собственности, чьи объекты были осмотрены в определенный день:

 

ON PROPERTY.Owner_no=OWNER.Owner_no

WHERE PROPERTY.Property_no=(SELECT Property_no

WHERE Date_View=’18.01.03’);

 

В таблице VIEWING будет найдена соответствующая дата и передана в предложение WHERE. После определения даты в основном запросе из таблицы PROPERTY будут отобраны записи, удовлетворяющие заданному условию.



(В данном примере предполагается, что подзапрос должен вернуть только одно значение).

Если подчиненный запрос возвращает более одного значения, использование запроса в таком виде приведет к ошибке. В тех случаях, когда подчиненный запрос возвращает более одной строки необходимо использовать следующие ключевые слова: ANY, SOME, ALL. Подчиненный запрос в этом случае должен возвращать один столбец.

ANY или SOME – возвращает TRUE, если заданное выражение является истинным для какой-нибудь из строк возвращаемой запросом.

ALL - возвращает TRUE, если заданное выражение является истинным для всех строк возвращаемой запросом.

Выведите список объектов собственности, которые были осмотрены покупателями (присутствуют в таблице VIEWING):

 

SELECT *



<== предыдущая лекция | следующая лекция ==>
Сортировка результатов запроса | Использование оператора UNION


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


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

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

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


 


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

 
 

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

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