Det finns ingen anledning att oroa sig för konflikten.
Schemat pg_temp är sessionsspecifikt. Om du har ett samtidig uttalande i en separat session kommer det att använda ett annat schema (även om du ser det som att det har samma namn).
Två anteckningar dock:
-
Varje gång du skapar tillfälliga objekt skapar systemkatalogen ett tillfälligt schema och själva objekten. Detta kan leda till rörigt om det används ofta.
Så för små uppsättningar/frekventa användningar är det vanligtvis bättre att hålla sig till en
in
eller enwith
uttalande (som båda Postgres klarar ganska bra av). Det är också ibland användbart att "lura" planeraren att använda vilken plan du än söker genom att använda en oföränderlig uppsättningsreturfunktion. -
Om du bestämmer dig för att faktiskt använda tillfälliga tabeller är det vanligtvis bättre att indexera och analysera dem när du har fyllt i dem. Annars gör du lite mer än att skriva en
with
uttalande.