Новые книги

Что в нем особенного? Почему Стив Джобс при жизни считался гением, а после смерти превратился в культовую фигуру, легенду и основателя религии Apple, у которой миллиарды последователей по всему миру? Не инженер, не дизайнер, он всего лишь дирижировал оркестром. По-своему. Он не признавал правил и беспрестанно унижал своих сотрудников. Джобс добился того, что его уволили из его собственной компании. Как из юного мечтателя он превратился в культового героя? Кто такой Стив Джобс и кем он стал после жизни?

Новая книга Бориса Соколова рассказывает историю жизни Стива Джобса – человека и легенды. Из книги Вы узнаете не только шокирующие подробности жизни Джобса, но и историю Apple, а также историю создания культа нового времени. Подробности съемок нового фильма, откровения Майкла Фассбендера, исполнителя главной роли в фильме Дэнни Бойла и многое другое! Читайте и поклоняйтесь Его Величеству Джобсу!
Рано или поздно продажи в любом бизнесе «замирают». Чтобы не сдать позиции конкурентам, необходимо ежедневно завоевывать и удерживать клиентов.

Активные продажи – двигатель бизнеса, а клиентская база – его главный актив. Применение методики холодных звонков, которая пошагово описана в этой книге, поможет вам успешно завоевывать клиентов и удерживать их. Простые инструменты – скрипты продаж и чек-листы, автоматизация и точечный контроль – сразу же докажут свою результативность.

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

Коррелированные вложенные подзапросы



3.3.5. Коррелированные вложенные подзапросы

Выдать название и статус поставщиков продукта с номером 11.

SELECT	Название, Статус
FROM	Поставщики
WHERE	11 IN
	(	SELECT	ПР
		FROM	Поставки
		WHERE	ПС = Поставщики.ПС );

Такой подзапрос отличается от рассмотренного в п.3.3.2 тем, что вложенный подзапрос не может быть обработан прежде, чем будет обрабатываться внешний подзапрос. Это связано с тем, что вложенный подзапрос зависит от значения Поставщики.ПС а оно изменяется по мере того, как система проверяет различные строки таблицы Поставщики. Следовательно, с концептуальной точки зрения обработка осуществляется следующим образом:

  1. Система проверяет первую строку таблицы Поставщики. Предположим, что это строка поставщика с номером 1. Тогда значение Поставщики.ПС будет в данный момент имеет значение, равное 1, и система обрабатывает внутренний запрос
    (	SELECT	ПР
    	FROM	Поставки
    	WHERE	ПС = 1 );
    получая в результате множество (9, 11, 12, 15). Теперь система может завершить обработку для поставщика с номером 1. Выборка значений Название и Статус для ПС=1 (СЫТНЫЙ и рынок) будет проведена тогда и только тогда, когда ПР=11 будет принадлежать этому множеству, что, очевидно, справедливо.
  2. Далее система будет повторять обработку такого рода для следующего поставщика и т.д. до тех пор, пока не будут рассмотрены все строки таблицы Поставщики.

Подобные подзапросы называются коррелированными, так как их результат зависит от значений, определенных во внешнем подзапросе. Обработка коррелированного подзапроса, следовательно, должна повторяться для каждого значения извлекаемого из внешнего подзапроса, а не выполняться раз и навсегда.

Рассмотрим пример использования одной и той же таблицы во внешнем подзапросе и коррелированном вложенном подзапросе.

Выдать номера всех продуктов, поставляемых только одним по-ставщиком.

Результат:
SELECT	DISTINCT X.ПР
FROM	Поставки X
WHERE	X.ПР NOT IN
	(	SELECT	Y.ПР	
		FROM	Поставки Y	
		WHERE	Y.ПС <> X.ПС ); 
X.ПР
17

Действие этого запроса можно пояснить следующим образом: "Поочередно для каждой строки таблицы Поставки, скажем X, выделить значение номера продукта (ПР), если и только если это значение не входит в некоторую строку, скажем, Y, той же таблицы, а значение столбца номер поставщика (ПС) в строке Y не равно его значению в строке X".

Отметим, что в этой формулировке должен быть использован по крайней мере один псевдоним - либо X, либо Y.

3.3.4 | Содержание | 3.3.6