sap hana рассчитывает проверку столбца для нескольких идентификаторов - PullRequest
0 голосов
/ 29 марта 2019

Я хочу создать вычисляемый столбец, в котором будут отображаться два значения: Y или N

Здесь важны 2 столбца: «VAT-ID» и «CUSTOMER-ID». рассчитанный столбец будет проверять, имеет ли идентификатор клиента несколько идентификаторов НДС. Если да, то должно отображаться значение «Y», иначе «N».

например, первые 5 строк столбца идентификатор клиента: 123456

654321

666666

123456

654321

первые 5 строк столбца VAT-id: EE999999999

AA999999999

GG999999999

KK999999999

AA999999999

первые 5 строк вычисляемого столбца должны быть: Y

N

N

Y

N

любая помощь будет оценена

Ответы [ 2 ]

1 голос
/ 30 марта 2019

Вычисляемые столбцы не допускают агрегации по группам или кроме текущей строки.

Что вы можете сделать, чтобы достичь своей цели, - это создать отдельный узел агрегации и подсчитать различное VAT-IDs, сгруппированное по CUSTOMER-ID.

Теперь вы можете получить вычисляемый столбец, который проверяет VAT-ID-COUNT > 1 и сопоставляет его с вашими значениями Y / N.

0 голосов
/ 08 апреля 2019

Как упомянул Ларс, невозможно использовать оконную функцию в вычисленном поле таблицы HANA

Но вы можете использовать следующий запрос, чтобы проверить, кратен ли номер НДС для клиента или нет

select
CustomerId, VATID,
case 
    when (count(*) over (partition by CustomerId, VATID)) > 1 
    then 'Y' 
    else 'N' 
end
from CustomerVAT;
...