вычисление снежинки для разделения 2 столбцов, дающих неправильные значения

#sql #snowflake-cloud-data-platform

#sql #snowflake-cloud-data-platform

Вопрос:

Я точно делаю эту сумму (2322933.99 / 1161800199.8) * 100 Я должен получить что-то 1,9, но я получаю 64. Что-нибудь может кто-нибудь подсказать мне, что это разделение в snowflake дает неправильные результаты Я попробовал их преобразовать в десятичные значения и попробовал с формулой div0 () Ничего не сработало

Комментарии:

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

2. Почему вы используете агрегатную функцию sum() ? Вероятно, вам нужно будет показать нам весь ваш запрос.

3. Это похоже на сумму (общий вес брутто / общее количество заполненных обращений) * 100 окончательный набор содержит 2700 записей

Ответ №1:

Я предполагаю, что ваша таблица базы данных содержит 33 строки. Таким образом, вы получаете 33 * 1,9 (из-за суммы), что составляет около 64.

Ответ №2:

Мое предположение, с учетом тех немногих деталей, которые вы нам сообщили:

  • sum(x)/sum(y) отличается от sum(x/y)
 1/2   2/4   4/8 = 1.5
(1 2 4)/(2 4 8) = 0.5
 

Попробуйте написать sum(total gross weight)/sum(total cases filled) вместо sum(total gross weight /total cases filled) .