Суббота, 18 Май 2024, 12:21
Uchi.ucoz.ru
Меню сайта
Форма входа

Категории раздела
Высшая математика [11]
Экономическая социология [95]
Основы Менеджмента [64]
Бухгалтерский учёт [157]
Философия [163]
Мировая Экономика [603]
Бизнес планирование [29]
Финансирование и кредитование инвест [105]
Ценообразование [46]
Гражданское право [196]
Права Человека [173]
Основы Маркетинга [207]
Основы энергосбережения [55]
Информатика [0]
Экология и устойчивое развитие [0]
Физика для студентов [0]
Основы права [0]
Политология [0]
Не стандартные примеры на Delphi [169]
Примеры на Delphi7 [108]
Алгоритмы [94]
API [110]
Pascal [152]
Базы Данных [6]
Новости
Чего не хватает сайту?
500
Статистика
Зарегистрировано на сайте:
Всего: 51636


Онлайн всего: 22
Гостей: 22
Пользователей: 0
Яндекс.Метрика
Рейтинг@Mail.ru

Каталог статей


Главная » Статьи » Студентам » Не стандартные примеры на Delphi

Кросс-таблица через pivot-таблицу
Мне нужна помощь по реализации запроса кросс-таблицы в Delphi.
У кого-нибудь имеется соответствующий опыт?
Использовать pivot-таблицу должен все тот-же общий механизм (относительно к
любой базе данных SQL).

Предположим, что у нас есть данные продаж в таблице с полями Store, Product,
Month, Sales, и вам необходимо отображать данные по продуктам за каждый месяц.
(Примем, что поле 'month' для простоты имеет значения 1..12.)

Оригинальные данные примера:

Store Product Month Sales
#1 Toys 1 100
#2 Toys 1 68
#1 Toys 2 150
#1 Books 1 75
...
Желаемый отчет должен выглядеть похожим на этот:
Product January February March .....
Toys 168 150
Books 75 .....
Установите pivot-таблицу с именем
tblPivot и 12 строками:
pvtMonth pvtJan pvtFeb pvtMar pvtApr ....
1 1 0 0 0 ....
2 0 1 0 0
3 0 0 1 0
4 0 0 0 1
.....
Теперь запрос, выполненный в виде:
select Product, January=sum(Sales*pvtJan),
February=sum(Sales*pvtFeb),
March=sum(Sales*pvtMar),
April=sum(Sales*pvtApr),...
where Month = pvtMonth
group by Product
даст вам информацию, опубликованную выше.

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

- John Crowley
Категория: Не стандартные примеры на Delphi | Добавил: Lerka (22 Ноя 2012)
Просмотров: 565 | Рейтинг: 1.0/ 4 Оштрафовать | Жаловаться на материал
Похожие материалы
Всего комментариев: 0

Для блога (HTML)


Для форума (BB-Code)


Прямая ссылка

Профиль
Суббота
18 Май 2024
12:21


Вы из группы: Гости
Вы уже дней на сайте
У вас: непрочитанных сообщений
Добавить статью
Прочитать сообщения
Регистрация
Вход
Улучшенный поиск
Поиск по сайту Поиск по всему интернету
Наши партнеры
Интересное
Популярное статьи
Портфолио ученика начальной школы
УХОД ЗА ВОЛОСАМИ ОЧЕНЬ ПРОСТ — ХОЧУ Я ЭТИМ ПОДЕЛИТ...
Диктанты 2 класс
Детство Л.Н. Толстого
Библиографический обзор литературы о музыке
Авторская программа элективного курса "Практи...
Контрольная работа по теме «Углеводороды»
Поиск
Главная страница
Используются технологии uCoz