与 PostgreSQL 中的 CREATE TEMP TABLE 相比,WITH 语句有什么区别?

What is the difference between the WITH statement compared to CREATE TEMP TABLE in PostgreSQL?

WITH 语句和 CREATE TEMP TABLE 语句有什么区别?

他们都创建了非持久性的 table。

一个比另一个有更好的表现还是纯粹是风格上的差异?

它们之间的主要区别在于,在 WITH 语句中创建的表仅适用于该语句,而 TEMP 表适用于整个会话。