在Postgres中,如果我想创建一个“匿名表格”(即基于数据而不是数据库的临时查询),我可以使用
但是我如何创建一个没有行的匿名表格呢?(这是为了一个代码生成器,所以问题并不像听起来那么奇怪!)。以下方法行不通。
因为我获取
我知道一个解决方法。
VALUES
,例如:select * from (values (1, 'Hello world'), (100, 'Another row')) as foo (mycol1, mycol2);
但是我如何创建一个没有行的匿名表格呢?(这是为了一个代码生成器,所以问题并不像听起来那么奇怪!)。以下方法行不通。
select * from (values ) as foo (mycol1, mycol2);
因为我获取
ERROR: syntax error at or near ")"
LINE 1: select * from (values ) as foo (mycol1, mycol2);
^
我知道一个解决方法。
select * from (values (NULL, NULL)) as foo (mycol1, mycol2) where mycol1 is not NULL;
但是是否有更好或“更官方”的方法呢?
(我还想知道是否有可能创建一个没有列的表!)
select * from (values (NULL, NULL)) as foo (mycol1, mycol2) where mycol1 is not NULL
。 - Tom Ellis