Hive - добавление 2 столбцов для каждой строки с некоторыми нулевыми значениями - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть SQL-запрос, в котором я объединяю 2 таблицы в другой таблице - A и B. Таблица A объединяется в таблице E по ID = ID. Таблица B объединяется в таблице E по ID = SKU

*.1002 * Таблица A и Таблица B имеют столбцы Цена, Значение

Иногда здесь есть нулевые значения

Я сделал Select ID, (A.Price + B.Price) AS TEST,(A.Value + B.Value) AS TEST2 из E

Но я получаю значения NULL для всех результатов теста и test2

Запрос:

select PII, PII_Count, SK_Count, (PII_Count - SK_Count) as TEST from CIEER
left join ccq on CIEER.PII = ccq.PRIE 
left join ccrq on CIEER.PII = ccrq.SKIE
order by PII_Count desc

1 Ответ

0 голосов
/ 20 февраля 2019

Если PII_count или SK_Count равен нулю, он вернет ноль, чтобы предотвратить вычисление нуля, вы должны использовать функцию nvl, как показано ниже:

(nvl(PII_count, 0) - nvl(SK_Count,0)) as TEST

В качестве альтернативы вы также можете использовать функцию COALESCE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...