|
|
|
Множественные значения
|
|||
|---|---|---|---|
|
#18+
Старая тема понималась много раз но чуток по другому поводу. Все тотже момент, когда есть формы в которые есть просто селект с выбором допустим Open/Complete статуса. Но чуток усложним, есть допустим поле что повредил, вроде тоже селект с выбором: рука/нога/глаз и т.д. Все просто, но тут встает вопрос подобных полей , вдруг нужно мультивыбор. Т.е. повредил и руку и ногу. По логике построения базы, нужно для множественных значений строить кросстаблицы, хотя для простоты, сохранять через запятую и также выводить разбивая гараздо проще. Тем более както не хочется на каждое вот такое поле заводить кросс записи когда форма в 200-300 полей минимум, еще и менять задним числом. Но вопрос не к самой базе а к выборкам, точнее к аналитики. Имея единичные значения можно крутить отчеты как угодно. и просто по людям, кто и что повреждал и сколько раз, и PIVOT развернуть для наиболее частых повреждениях. Но вот если значения множественные 1 / Март / User 1 / "рука, нога" 2 / Апрель / User 2 / "спина, рука" 3 / Апрель / User 1 / "глаз" и тут встает недопонимание, как можно крутить аналитику запросами, от простых count() до поворачивание в PIVOT по периодам, по людям. по частоте. Второй момент это кросс таблицы, если таблица имеет много таких множественных полей, то на одну форму выходит десятки кросс таблиц. Тут же встает снова вопрос аналитики, уже не предоставишь одну развертку по которой можно крутить статистику. Допустим у нас в кросс таблицах хранится что повредил и допустим симптомы "головная боль/тошнота/головокружение/слабость" Получаем уже основную таблицу плюс две кросс таблицы, вместо полей через запятую. теперь для аналитики выдать одной разверткой не получится потому как будет множественные повторы нужно или группировать или еще разные ухищрения, и при этом вдруг нужна таблица сводная и по повреждениям и по симптомам в один результат, или чиво было больше, или взаимосвязь одно с другим или более часто повторяющиеся. Прошу помощи понять как лучше подходить к таким моментам. Ведь важнее не как оно храниться в базе а как это потом будет выдаваться для аналитики. Ведь выдать пользователю потом неудобоваримый VIEW и фиг что посчитаешь никому не подходит. P.S. "аналитика" имеется ввиду, интерфейс пользователя который говорит ему что есть таблица данных с полями "Человек/Дата/Повреждение/Симптомы" и аналитик тыкая мышкой говорит что хочет получить сводную статистику , кто,когда,сколько и что. Имея оба варианта: в одной колонке или через кросс, оба варианта ставят в тупик построения аналитики. Модератор: Тема перенесена из форума "Microsoft SQL Server". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2013, 15:58 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38273699&tid=1541251]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
68ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 354ms |

| 0 / 0 |
