Adam Mackler, 17.09.2012 11:06:
> I have the feeling the answer is no, but I would like an
> authoritative answer before I give up.
>
> My plan was to have two schemas: one for the live data, and one for
> staging, training, and testing. Both schemas would have
> identically-named tables. I wanted to create a single view in the
> public schema, and have that one view refer to the tables in one or
> the other schema depending on my search_path setting at the time I
> query the view.
>
> But it seems that at the time the view is created it decides which
> schema's table it's referring to, even if I don't explicitly qualify
> the table names with the schema name.
>
> Am I correct in concluding that there's no way to have a single view
> in the public schema that selects data from tables in different other
> schemas depending on my search_path at the time I execute a query
> involving that view?
>
You could achieve this using a set returning function.
Inside the function you'd check the search_path and then dynamically build the approriate SELECT statement
Regards
Thomas