2011-01-21 3 views
7

можно ли ссылаться на имя столбца/таблицы с помощью строки? Что-то вроде SELECT * FROM 'my_table'::table_name_t?Обратитесь к именам столбцов/таблиц, используя строки?

Причина, по которой я спрашиваю: у меня есть таблица geometry_columns с некоторыми таблицами геометрии. И я хотел бы знать, какие объекты находятся в определенном радиусе.

Thanks, Philip

ответ

5

Для этого вам понадобится (сохраненная) функция. Функция принимает имя таблицы в качестве аргумента, динамически создает SQL, а затем возвращает результат SELECT на основе этого запроса.

вот несколько примеров (не совсем то, что вам нужно, но они должны получить вы движетесь в правильном направлении):

http://forums.devshed.com/postgresql-help-21/plpgsql-variable-representing-table-name-137201.html
Dynamic column in SELECT statement postgres

+0

Ok спасибо. Полезно знать, хотя я думаю, что это слишком много для моей проблемы. – Philip

0

Я не думаю, что вы можете сделать это напрямую. Я думаю, вам нужно будет построить инструкцию select из другого оператора или фрагмента кода, а затем выполнить результирующий оператор.

Смежные вопросы