> On Mar 20, 2024, at 09:51, Celia McInnis <celia.mcinnis@gmail.com> wrote:
>
> The view is being used in some web query software that multiple people will be accessing and the contents of the view
dependon what the person is querying, so I think that temporary views or tables are a good idea.
There's nothing wrong with temporary views or tables, and the use-case you describe is a reasonable one. The issue
comesup when they have the same name as a permanent view or table.
It's deterministic which one a query will use. All temporary objects are in the pseudo-schema `pg_temp` (it's a
"pseudo-schema"because it's an alias to the current session's temporary schema, rather than a schema itself). By
default,pg_temp is absent from search_path, which is treated as if it were the first entry, so temporary tables and
views"mask" the permanent ones. However, if that temporary object doesn't happen to exist, or if pg_temp is explicitly
movedto a different position in the search path, you could have some surprising behavior.