Скачиваний:
25
Добавлен:
01.04.2014
Размер:
761.34 Кб
Скачать

94 Понимание sql

______________________________________________________________________

ГЛ. 8

=============== РЕЗЮМЕ ===============

Теперь вы больше не ограничиваетесь просмотром одной таблицы в каждый

момент времени. Кроме того, вы можете делать сложные сравнения между

любыми полями любого числа таблиц и использовать полученные результаты

чтобы решать какую информацию вы бы хотели видеть. Фактически, эта

методика настолько полезна для построения связей, что она часто используется

для создания их внутри одиночной таблицы. Это будет правильным: вы сможете

объединить таблицу с собой, а это очень удобная вещь.

Это будет темой Главы 9.

ЗАПРАШИВАНИЕ МНОГОЧИСЛЕНЫХ ТАБЛИЦ КАК ОДНОЙ 95

________________________________________________________________

************** Работа с sql **************

1. Напишите запрос который бы вывел список номеров порядков

сопровождающихся именем заказчика который создавал эти порядки.

2. Напишите запрос который бы выдавал имена продавца и заказчика для

каждого порядка после номера порядков.

3. Напишите запрос который бы выводил всех заказчиков обслуживаемых

продавцом с комиссионными выше 12% . Выведите имя заказчика, имя

продавца, и ставку комиссионных продавца.

4. Напишите запрос который вычислил бы сумму комиссионных продавца

для каждого порядка заказчика с оценкой выше 100.

( См. Приложение A для ответов. )

9

Объединение таблицы с собой

98 ПОНИМАНИЕ SQL

______________________________________________________________________

CH 9

В ГЛАВЕ 8, МЫ ПОКАЗАЛИ ВАМ КАК ОБЪЕДИНЯТЬ ДВЕ

или более таблиц - вместе.

Достаточно интересно то, что та же самая методика может использова-

ться чтобы объединять вместе две копии одиночной таблицы.

В этой главе, мы будем исследовать этот процесс. Как вы видете, объе-

динение таблицы с самой собой, далеко не простая вещь, и может быть

очень полезным способом определять определенные виды связей между

пунктами данных в конкретной таблице.

========= КАК ДЕЛАТЬ ОБЪЕДИНЕНИЕ ==========

ТАБЛИЦЫ С СОБОЙ ?

Для объединения таблицы с собой, вы можете сделать каждую строку

таблицы, одновременно, и комбинацией ее с собой и комбинацией с

каждой другой строкой таблицы. Вы затем оцениваете каждую комбинацию

в терминах предиката, также как в обьединениях мультитаблиц. Это позво-

лит вам легко создавать определенные виды связей между различными по-

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

со значением поля, например.

Вы можете изобразить обьединение таблицы с собой, как обьединение

двух копий одной и той же таблицы. Таблица на самом деле не копируется,

но SQL выполняет команду так, как если бы это было сделано.

Другими словами, это обьединение - такое же, как и любое другое обьеди-

нение между двумя таблицами, за исключением того, что в данном случае

обе таблицы идентичны.

Соседние файлы в папке ПОНИМАНИЕ SQL