#sql #aggregate #dimensions
#sql #агрегировать #измерения
Вопрос:
У меня есть таблица SQL с несколькими измерениями, когда я объединяю ее по измерениям первого дня, я получаю правильное число, но когда я добавляю больше измерений, я получаю другое число. Это очень странно SK_DATE SK_COUNTRY Number1 Number2
Так что, если я сделаю
SELECT
SK_DATE
,MAX(number1)
,MAX(number2)
FROM
table 1
GROUP BY
SK_DATE
;
Нет, когда я запускаю то же самое. однако на этот раз
SELECT
SK_DATE
,SK_COUNTRY
,MAX(number1)
,MAX(number2)
FROM
table 1
GROUP BY
SK_DATE
,SK_COUNTRY
;
итак, при первом запуске я получаю 5,2 млн для номера 1, но при выполнении второго запроса я получаю 6,4 млн
Заранее спасибо
Комментарии:
1. Добавьте пример данных таблицы, текущий результат и ожидаемый результат. Все также отформатированный текст.
Ответ №1:
Если вы получили больше значений SK_COUNTRY в одном SK_Date , следует ожидать, что количество строк увеличится. Поскольку агрегация будет основана на уникальной комбинации SK_DATE и SK_COUNTRY
SELECT
SK_DATE
,SK_COUNTRY
,MAX(number1)
,MAX(number2)
FROM
table 1
GROUP BY
SK_DATE
,SK_COUNTRY
;