3

PostgreSQLで変数を文字列として表現する方法はありますか?

例:

\set table_name countries
SELECT 'SELECT * FROM ' || CAST( :table_name, 'text' ) AS specificQuery;

このエラーが発生します:

ERROR:  syntax error at or near ","
LINE 1: SELECT 'SELECT * FROM ' || CAST( countries, 'text' ) AS specificQuery;

上記の行のサンプルから、「国」を文字列に変換しないことは明らかですが、列/テーブルの名前として表されます。

どうすれば変換できますか?

4

2 に答える 2

8

このようなものをお探しですか?:

SELECT * FROM :"table_name";

http://www.postgresql.org/docs/current/interactive/app-psql.html#APP-PSQL-VARIABLES

于 2012-05-13T21:43:11.680 に答える
2

このようなもの :

SELECT 'SELECT * FROM ' || countries::text AS specificQuery;
于 2012-05-13T21:14:38.983 に答える