У меня есть оператор SQL, где я хотел бы получить данные 1200 ep_codes
, используя предложение IN
. Когда я включаю более 1000 ep_codes
внутри предложения IN, Oracle говорит, что мне не разрешено это делать. Чтобы преодолеть это, я попытался изменить код SQL следующим образом:
SELECT period, ...
FROM my_view
WHERE period = '200912'
...
AND ep_codes IN (...1000 ep_codes...)
OR ep_codes IN (...200 ep_codes...)
Код был выполнен успешно, но результаты странные (результаты вычислений выбираются для всех периодов, а не только для 200912, что не то, что я хочу). Уместно ли это сделать с помощью OR
между предложениями IN
или я должен выполнить два отдельных кода как один с 1000, а другой с 200 ep_codes?
Решение Pascal Martin отлично работало. Спасибо всем, кто внес ценные предложения.