Я выполняю запрос, который приводит к количеству как негативов, так и позитивов для транзакций. Я хочу, чтобы они оба показывали для использованных продуктов; тем не менее, я хочу показать положительные результаты только при доставке и переводе.
Используется, доставка и передача все извлекаются из столбца Тип транзакции. Я не знаю лучшего способа ограничить количество только положительных величин только типами транзакций доставки и переноса и сохранить как использованные, так и отрицательные значения.
Я пытался ограничить это в предложении where, но это либо ограничивало его передачей строго по доставке и передает только ИЛИ, извлекая только положительные значения для всех типов транзакций.
В приведенном ниже коде он показывает оператор case, который я пытался выполнить, однако выдает ошибку при попытке запустить скрипт.
SELECT distinct
case when NOT upper(transaction_type) = 'PURCHASE'
AND DST_PROPERTY_TYPE = 'WAREHOUSE' THEN 'Return'
ELSE transaction_type END transaction_type
, transaction_type as transaction_type_OG --, division_name2
, case when transaction_type in ('Delivery','Transfer')
then quantity >=0 else quantity end
, transaction_id
, comments
, src_division_name
, src_property_name
, src_property_type
, src_afe, src_rig_name
, dst_division_id
, dst_division_name
, dst_property_name
, dst_property_type
, dst_afe
, dst_rig_name
, M.CATEGORY_NAME
, item_id
, item_name
, quantity
, created_by, ticket_number
FROM transactions.tables m
WHERE not CATEGORY_ID IN ('1294','1295','1337')
AND MASTER_PROPERTY NOT LIKE '%products%'
AND MASTER_PROPERTY NOT LIKE '%TEST%'
and transaction_dt = trunc(sysdate) - 1
order by transaction_type, src_property_type, src_property_name