Я хотел бы выполнить оператор SQL на основе строки. Я создал оператор SQL с помощью функции, которая возвращает строку. Может ли кто-нибудь объяснить, как я могу выполнить возвращаемый оператор? Я знаю, что вы не можете сделать это в простом SQL, поэтому я подумал о том, чтобы поместить его в функцию. Единственная проблема заключается в том, что столбцы в операторе не всегда одинаковы, поэтому я не знаю, какие типы данных использовать для столбцов. Я использую Постгрес 9.1.0.
Например, предположим, что строка SQL, возвращаемая моей функцией, имеет вид:
Выберите открытый, закрытый, удаленный из abc
Но это также может быть: Выберите открыть из abc
Или Выберите открытый, закрытый от abc
Как я могу выполнить любую из этих строк, чтобы результаты возвращались в виде таблицы только со столбцами, перечисленными в операторе?
Изменить: функция написана на PL/pgSQL. И результаты будут использоваться для отчетов, где они не хотят видеть столбцы, у которых нет значений. Итак, функция, которую я написал, возвращает имена всех столбцов со значениями, а затем добавляет их в оператор SQL.
Спасибо за вашу помощь!