Non c'è bisogno di preoccuparsi del conflitto.
Lo schema pg_temp è specifico della sessione. Se hai un'istruzione simultanea in una sessione separata, utilizzerà uno schema diverso (anche se vedi che ha lo stesso nome).
Due note, però:
-
Ogni volta che si creano oggetti temporanei, il catalogo di sistema crea uno schema temporaneo e gli oggetti stessi. Questo può creare disordine se usato frequentemente.
Quindi, per piccoli set/usi frequenti, di solito è meglio attenersi a un
in
o unwith
affermazione (con cui Postgres riesce a far fronte abbastanza bene). Occasionalmente è anche utile "ingannare" il pianificatore facendogli utilizzare il piano che stai cercando utilizzando una funzione di restituzione di un set immutabile. -
Nel caso in cui tu decida di utilizzare effettivamente tabelle temporanee, di solito è meglio indicizzarle e analizzarle una volta che le hai riempite. Altrimenti stai facendo poco più che scrivere un
with
dichiarazione.