У меня есть данные, которые являются матрицей целочисленных значений, которые указывают на полосу распределения распределения. Я оптимизирую для производительности SELECT над производительностью INSERT. Максимум 100 полос. В первую очередь я буду запрашивать эти данные путем суммирования или усреднения диапазонов в течение определенного периода времени.Устраняет ли денормализация строк столбцами в производительности SQL Server?
Мой вопрос: могу ли я достичь лучшей производительности, сглаживая эти данные по таблице с 1 столбцом для каждой полосы или используя один столбец, представляющий значение полосы?
уплощенных данные
UserId ActivityId DateValue Band1 Band2 Band3....Band100
10001 10002 1/1/2013 1 5 100 200
ИЛИ Нормированная
UserId ActivityId DateValue Band BandValue
10001 10002 1/1/2013 1 1
10001 10002 1/1/2013 2 5
10001 10002 1/1/2013 3 100
Пример запроса
SELECT AVG(Band1), AVG(Band2), AVG(Band3)...AVG(Band100)
FROM ActivityBands
GROUP BY UserId
WHERE DateValue > '1/1/2012' AND DateValue < '1/1/2013'