Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
SELECT Вид,
--столбец (столбцы), значения из которого формируют заголовки строк [Овощи], [Мясо], [Рыба], [Молоко], [Яйца], [Крупа], [Фрукты], [Кофе] --значения формирующие заголовки столбцов FROM (SELECT s.Вид, Основа FROM Блюда b JOIN Справочник_вид_блюда s ON b.Вид = s.ID_Вид) a --здесь может быть таблица или подзапрос PIVOT --формирование pivot-таблицы (COUNT(Основа) -- агрегатная функция, формирующая содержимое сводной таблицы FOR Основа -- указывается столбец, уникальные значения в котором будут являться IN ([Овощи], [Мясо], [Рыба], [Молоко], [Яйца], [Крупа], [Фрукты], [Кофе]) --указываются конкретные значения в столбце Основа, -- которые следует использовать в качестве заголовков ) pvt; -- алиас для сводной таблицы
В отличие от сводных таблиц, в операторе PIVOT требуется явно перечислить столбцы для вывода. Это серьезное ограничение, т.к. для этого нужно знать характер данных, а значит, и применять в приложениях этот оператор мы сможем, как правило, только к справочникам (вернее, к данным, которые берутся из справочников).
Синтаксис: SELECT <несведенный столбец>, [первый сведенный столбец] AS <имя столбца>, [второй сведенный столбец] AS <имя столбца>, ... [последний сведенный столбец] AS <имя столбца>, FROM (< запрос SELECT, извлекающий эти данные>) AS <псевдоним исходного запроса> PIVOT ( <статистическая функция>(<статистически обработанный столбец>) FOR [<столбец, содержащий значения, которые станут именами столбцов>] IN ([первый сведенный столбец], [второй сведенный столбец], ... [последний сведенный столбец]) )AS <псевдоним сведенной таблицы> <необязательное предложение ORDER BY>;
Приведенную таблицу можно заполнить и стандартным способом с использованием оператора CASE:
Date: 2015-09-18; view: 334; Нарушение авторских прав |