-
Всем привет!
Программа должна сделать весьма хитрую группировку данных из БД. Я бы сказал- суперпозицию. Задача сделать таблицу для многомерного анализа.
Ниже нарисовал структуру БД исходной и что должно быть на выходе.
Если кто нибудь знает какой SQL запрос сделать для этого - буду строить ему памятник! )) Аська 374-947-331
IDOC (уникальный номер документа) Метка Термин
123 1 Иванов
123 2 Правда
123 3 Москва
123 4 1956
21 1 Петров
21 2 Молот
21 3 Москва
21 4 1978
356 Толкиен
356 Правда
356 Москва
356 1956
124 1 Иванов
124 2 Правда
124 3 Москва
124 4 1956
89 1 Алуштин
89 2 Правда
89 3 Москва
89 4 1990
91 1 Алуштин
91 2 Правда
91 3 Москва
91 4 1990
65 1 Алуштин
65 2 Правда
65 3 Москва
65 4 1990
К БД прилогается файл с расшифровкой меток:
1 - авторы
2 - издательства
3 - место издания
4 - год издания
В результате нужно распределить данные в виде многомерной таблицы:
МЕСТО ИЗДАТЕЛЬСТВО ГОД АВТОР
Москва: 7 док правда: 6 док 1956: 3 док толкиен: 1 док
Москва: 7 док правда: 6 док 1956: 3 док Иванов: 2 док
Москва: 7 док правда: 6 док 1990: 3 док Алуштин: 3 док
Москва: 7 док Молот:1 док 1978: 1 док Петров: 1док
Пользователь может выбрать порядок столбцов в такой таблице (приоритет группировки)
Т.е. по сути выбрать что от чего распределять
Здесь "город - в нем по издательствам - в них по годам - авторам"
-
group by?
-
Да, конечно через group by, но вопрос как сделать вложенную группировку)
Это же комбинация из нескольких.
-
> Иван (21.03.10 22:14) [2]
>
> Да, конечно через group by, но вопрос как сделать вложенную
> группировку)
> Это же комбинация из нескольких.
Ты справку по "group by" прочитал? Попробовал? Или так философски спрашиваешь?
-
> [0] Иван (21.03.10 16:46)
> Задача сделать таблицу для многомерного анализа.
Только таблицу и собственно многомерный анализ?
-
Графическую интерпритацию делать не нужно. Просто сводную таблицу указанной выше структуры. Поидее через нее видно как раз многомерное распределение документов сразу по нескольким полям.
-
> [5] Иван (23.03.10 00:32)
Судя по моему поверхностному знакомству с OLAP-кубами - SQL-ем тут не обойдешься, по крайней мере им одним. Скорее всего нужно строить дополнительные таблицы для хранения уже сгруппированых измерений и дополнять их новыми значениями по мере поступления последних.
Правда я не понял где тут в
> МЕСТО ИЗДАТЕЛЬСТВО ГОД АВТОР
> Москва: 7 док правда: 6 док 1956: 3 док толкиен: 1 док
> Москва: 7 док правда: 6 док 1956: 3 док Иванов: 2 док
> Москва: 7 док правда: 6 док 1990: 3 док Алуштин: 3 док
> Москва: 7 док Молот:1 док 1978: 1 док Петров: 1док
многомерный анализ? По мне так это просто результат последовательной фильтрации. И так же непонятен смысл выводимого скопом.