One of the easiest ways to tackle such Real Time scenarios is through use of Oracle Defined "SYS_REFCURSOR" or "REF CURSOR".
We can create a Procedure with an out parameter of Type SYS_REFCURSOR and in the execution block we can open a cursor variable of same type as SYS_REFCURSOR for the required Select Query.
I will update this with a sample Code shortly.
Till then Cheers and Enjoy!!