游标 PLSQL 中的动态列名

Dynamic Column Name In Cursor PLSQL

我一直在 pl/sql 中处理查询。我有几乎相同的命名列,如 column1、column2、column3

在 Cursor 中,如何使用动态名称获取这些列的值。 例如:

FOR Cursor_r IN Cursor_c LOOP
    BEGIN 

        IF Cursor_r.column1 = 'dummy1' THEN 
             MyProc(Cursor_r.column1);
        ELSIF Cursor_r.column1 = 'dummy2' THEN
             MyProc(Cursor_r.column2);
        ELSIF Cursor_r.column1 = 'dummy3' THEN
             MyProc(Cursor_r.column3);
        END IF;

    END; 
END LOOP;

谢谢。

您可以使用动态 sql 获取所有列名。参见 this