невозможно суммировать столбец - PullRequest
0 голосов
/ 18 мая 2019

Я полностью озадачен выводом SQL-запроса. Вот мой SQL:

SELECT 
    PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, ORIGINAL_QUANTITY, 
    SUM(MySum) Orig_Qty
FROM
    Test 
GROUP BY
    PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, ORIGINAL_QUANTITY

Этот запрос не суммирует и не возвращает одну строку. Я ожидаю, что Orig_Qty будет 340.

Вот SQL Fiddle

Я ожидаю следующий вывод:

enter image description here

Ответы [ 2 ]

1 голос
/ 18 мая 2019

ORIGINAL_QUANTITY отличается между этими двумя строками, поэтому вы не получили 340. Используйте это:

SELECT PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, SUM(MySum) Orig_Qty
from Test r 
Group by PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION
0 голосов
/ 18 мая 2019

использовать подзапрос

select sum(Orig_Qty) q from
    (SELECT PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, ORIGINAL_QUANTITY, SUM(MySum) Orig_Qty
    from Test r 
    Group by PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, ORIGINAL_QUANTITY
    ) a

или просто используйте по мере необходимости только сумму кол-во

SELECT  SUM(MySum) Orig_Qty
from Test r 

если вам нужен весь столбец с суммой, тогда используйте оконную функцию

SELECT distinct PROJECT_ID, ACTIVITY_RUB4, CALCULATION_VERSION, 
SUM(MySum) over() Orig_Qty
from Test r 

PROJECT_ID  ACTIVITY_RUB4   CALCULATION_VERSION     Orig_Qty
36002       12.C01-01-RP       V001                  340
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...