I did a search on this forum and found an excellent answer on how to limit results from an oracle query, but is it possible to build the results using a dynamic column in the ORDER BY section?

Code:
CREATE OR REPLACE PACKAGE misPkg AS
  TYPE return_cur IS REF CURSOR;

  PROCEDURE getFldrsLim2(p_offset   IN NUMBER,
                         p_limit    IN NUMBER,
                         p_order    IN VARCHAR,
                         p_fldr_cur IN OUT return_cur);
  
END misPkg;
/
CREATE OR REPLACE PACKAGE BODY misPkg AS  
  PROCEDURE getFldrsLim2(p_offset   IN NUMBER,
                         p_limit    IN NUMBER,
                         p_order    IN VARCHAR,
                         p_fldr_cur IN OUT return_cur) IS
  BEGIN
      OPEN p_fldr_cur FOR
    SELECT *
      FROM (SELECT ROWNUM AS rn,
                   t1.fldr_id,
                   t1.fldr_name
              FROM inf_cat_fldrs t1
              -- p_order isn't working
              -- if I use a 'real' column hardcoded it works
              ORDER BY p_order) 
              
     WHERE rn BETWEEN p_offset
       AND p_limit;
  END getFldrsLim2;  
END misPkg;
Is there a way to pass a column name in and have the ORDER BY use that as a valid column name?

For example, I display a webpage with muliple columns, I can allow the user to click different column headings to return results sorted by a different column....

Any help is appreciated!

Cheers,
Keith.