在PostgreSQL中:
1.
2.
Database System Concepts似乎暗示
自SQL:1999版本以来,SQL标准支持一种有限的递归形式,使用with recursive子句,其中一个视图(或临时视图)以其自身为基础进行表达。递归查询可以用于简洁地表示传递闭包。请注意,with子句用于定义一个临时视图,其定义仅对定义它的查询可用。附加关键字recursive指定该视图是递归的。
1.
WITH
子句创建了临时视图还是临时表?(如果我没记错的话,视图存储查询的代码,而表存储查询的结果)2.
CREATE TEMPORARY VIEW
创建了一个仅在当前会话中可用的临时视图。那么WITH
创建的临时视图和CREATE TEMPORARY VIEW
创建的有何区别?Database System Concepts似乎暗示
WITH
创建的是临时视图而不是临时表:自SQL:1999版本以来,SQL标准支持一种有限的递归形式,使用with recursive子句,其中一个视图(或临时视图)以其自身为基础进行表达。递归查询可以用于简洁地表示传递闭包。请注意,with子句用于定义一个临时视图,其定义仅对定义它的查询可用。附加关键字recursive指定该视图是递归的。