Новые книги

Первое знакомство с теорией маркетинга большинства граждан бывшего СССР началось с книги Филипа Котлера «Основы маркетинга», выпущенной издательством «Прогресс» в 1990 году. Учебник оказался настолько своевременным и востребованным, что тут же появились сотни тысяч пиратских копий, изданных предприимчивыми дельцами от издательского бизнеса. Книга, которую вы держите в руках, – единственное, на сегодняшний день, легальное издание полюбившегося бестселлера. В это издание включена новая глава об интерактивном маркетинге; обновлены примеры практического применения отдельных теоретических положений.

Книга предназначена студентам экономических специальностей, но будет интересна и широкому кругу читателей.
Маркетеры, руководители компаний и предприниматели часто не знают о новых и революционных инструментах маркетинга. А если знают, то не решаются первыми попробовать их. И напрасно. Если новое сделает ваш маркетинг хоть немного эффективнее, то вам обеспечены и рост бизнеса, и прибыль. В этой книге специалисты по инновационному маркетингу собрали «горячую десятку» новых и революционных технологий, услуг, сервисов и инструментов маркетинга. Для каждого варианта есть краткое описание, основные преимущества, стоимость, сложность реализации, сроки, примеры из практики, результаты и «фишки». Попробуйте – удивите клиентов, конкурентов, отрасль. И удивитесь результатам сами.

Простые вложенные подзапросы

3.3.2. Простые вложенные подзапросы

Простые вложенные подзапросы используются для представления множества значений, исследование которых должно осуществляться в каком-либо предикате IN, что иллюстрируется в следующем примере: выдать название и статус поставщиков продукта с номером 11, т.е. помидоров.

Результат:
SELECT	Название, Статус
FROM	Поставщики
WHERE	ПС IN
	(	SELECT	ПС
		FROM	Поставки
		WHERE	ПР = 11 );
НазваниеСтатус
СЫТНЫЙрынок
УРОЖАЙкоопторг
ЛЕТОагрофирма
КОРЮШКАкооператив

Как уже отмечалось в п.3.3.1, при обработке полного запроса система выполняет прежде всего вложенный подзапрос. Этот подзапрос выдает множество номеров поставщиков, которые поставляют продукт с кодом ПР = 11, а именно множество (1, 5, 6, 8). Поэтому первоначальный запрос эквивалентен такому простому запросу:

SELECT	Название, Статус
FROM	Поставщики
WHERE	ПС IN (1, 5, 6, 8);

Подзапрос с несколькими уровнями вложенности можно проиллюстрировать на том же примере. Пусть требуется узнать не поставщиков продукта 11, как это делалось в предыдущих запросах, а поставщиков помидоров, являющихся продуктом с номером 11. Для этого можно дать запрос

SELECT	Название, Статус
FROM	Поставщики
WHERE	ПС IN
	(	SELECT	ПС
		FROM	Поставки
		WHERE	ПР IN
			(	SELECT	ПР
				FROM	Продукты
				WHERE	Продукт = 'Помидоры' ));

В данном случае результатом самого внутреннего подзапроса является только одно значение (11). Как уже было показано выше, подзапрос следующего уровня в свою очередь дает в результате множество (1, 5, 6, 8). Последний, самый внешний SELECT, вычисляет приведенный выше окончательный результат. Вообще допускается любая глубина вложенности подзапросов.

Тот же результат можно получить с помощью соединения

SELECT	Название, Статус
FROM	Поставщики, Поставки, Продукты
WHERE	Поставщики.ПС = Поставки.ПС
AND	Поставки.ПР = Продукты.ПР
AND	Продукт = 'Помидоры';

При выполнении этого компактного запроса система должна одновременно обрабатывать данные из трех таблиц, тогда как в предыдущем примере эти таблицы обрабатываются поочередно. Естественно, что для их реализации тебуются различные ресурсы памяти и времени, однако этого невозможно ощутить при работе с ограниченным объемом данных в иллюстративной базе ПАНСИОН.

3.3.1 | Содержание | 3.3.3