Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];

Вниз

Суперпозиция группировок в отображении данных БД   Найти похожие ветки 

 
Иван   (2010-03-21 16:46) [0]

Всем привет!

Программа должна сделать весьма хитрую группировку данных из БД. Я бы сказал- суперпозицию. Задача сделать таблицу для многомерного анализа.
Ниже нарисовал структуру БД исходной и что должно быть на выходе.
Если кто нибудь знает какой 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док
 
 
Пользователь может выбрать порядок столбцов в такой таблице (приоритет группировки)  
Т.е. по сути выбрать что от чего распределять  
Здесь "город - в нем по издательствам - в них по годам - авторам"


 
Виталий Панасенко(дом)   (2010-03-21 18:22) [1]

group by?


 
Иван   (2010-03-21 22:14) [2]

Да, конечно через group by, но вопрос как сделать вложенную группировку)
Это же комбинация из нескольких.


 
Плохиш ©   (2010-03-21 23:16) [3]


> Иван   (21.03.10 22:14) [2]
>
> Да, конечно через group by, но вопрос как сделать вложенную
> группировку)
> Это же комбинация из нескольких.

Ты справку по "group by" прочитал? Попробовал? Или так философски спрашиваешь?


 
Sergey13 ©   (2010-03-22 09:43) [4]

> [0] Иван   (21.03.10 16:46)
> Задача сделать таблицу для многомерного анализа.

Только таблицу и собственно многомерный анализ?


 
Иван   (2010-03-23 00:32) [5]

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


 
Sergey13 ©   (2010-03-23 09:08) [6]

> [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док

многомерный анализ? По мне так это просто результат последовательной фильтрации. И так же непонятен смысл выводимого скопом.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
1-1278219470
revo
2010-07-04 08:57
2011.12.25
Занят файл или нет


15-1315308256
Scott Storch
2011-09-06 15:24
2011.12.25
как повысить восприятие английского на слух.


15-1315397201
Skype
2011-09-07 16:06
2011.12.25
MS Skype vs Google Chrome


2-1316479455
FZT
2011-09-20 04:44
2011.12.25
ПРоблемы с указателями


4-1252568961
Гриня
2009-09-10 11:49
2011.12.25
Взаимодействие с Opera





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский