我想使用 select 语句创建一个临时表,该语句使用 WITH 语句中指定的临时视图(不是 CREATE TEMPORARY TABLE 的 WITH 语句)。
例如类似的东西
WITH a AS (
SELECT 1 foo, 2 bar
), b AS (
SELECT 4 bar, 5 baz
)
CREATE TEMPORARY TABLE foo AS
SELECT * from a JOIN b ON (a.bar=b.bar)
如果我注释掉 CREATE TEMPORARY TABLE 行,这行得通。如何使用 SELECT 的查询结果创建临时表,而不将临时视图重写为单个查询?
WITH 跟在 CREATE TABLE 之后
请注意,以上将导致“错误:列“bar”指定了多次”-但我假设您在实际查询中使用了更好的(不同的)列名。