Мне нужно сгенерировать отчет об отклоненных позициях заказа, я должен сделать это, когда заказ завершит обработку системой и условия, которые я должен учитывать, что заказ прекратил обрабатываться:
- Статус заказа в процессе равен или больше 600
- Все позиции в заказе были отклонены и имеют статус 999
Я хочу сделать запрос SQL, который учитывает два предыдущих условия, чтобы вернуть мне отклоненные элементы из заказа, когда он больше не обрабатывается системой.
пример сценария:
Итак, я пробую их следующим образом
select * from order_detail_status
where order_number = 'OR_001'
and process_status= '999'
and process_id = (select max(process_id) from configuracion.order_detail_status where order_number = 'OR_001' and process_status >= 600)
это сработало бы, если бы существовал только сценарий 1, но для сценария 2 запрос никогда не достигнет этого состояния, поэтому я пытаюсь добавить второе условие:
or (select distinct (process_status) from configuracion.order_detail_status where order_number = 'OR_002' ) = '999'
во втором условии я хочу указать, что все записи заказа были отклонены с состоянием 999, но у меня это не работает, какие-либо предложения?