Я понимаю, что вы ищете решение, которое может сделать это за один запрос, то есть без предварительного выполнения отдельного запроса метаданных.
К сожалению, это будет невозможно. Функция decode может выполнять некоторые динамические действия со значениями столбцов, но не с именами столбцов. И вы ищете решение для динамического получения имени столбца.
Альтернативой может быть просто добавление ORDER BY 1, 2
. Это старый синтаксис, который означает порядок по первому, а затем по второму столбцу. Это может быть хорошим решением, если столбец custID является первым столбцом. В противном случае это, по крайней мере, даст вам некоторую сортировку.