如何在PostgreSQL中使用VALUES创建临时表

前端之家收集整理的这篇文章主要介绍了如何在PostgreSQL中使用VALUES创建临时表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在学习Postgresql并试图找出如何创建临时表或WITH声明,可以用来代替常规表,以进行调试.

我查看了CREATE TABLE的文档,它说VALUES可以用作查询,但没有给出任何示例;其中链接的VALUES子句的文档也没有例子?

所以,我写了一个简单的测试如下:

  1. DROP TABLE IF EXISTS lookup;
  2. CREATE TEMP TABLE lookup (
  3. key integer,val numeric
  4. ) AS
  5. VALUES (0,-99999),(1,100);

但是Postgresql(9.3)正在抱怨

Syntax error at or near “AS”

我的问题是:

>我如何修复上述声明?
>我如何调整它以用于WITH块?

提前致谢.

如果您只想从某些值中进行选择,而不是仅仅创建一个表并插入其中,您可以执行以下操作:
  1. WITH temp (k,v) AS (VALUES (0,-9999),100))
  2. SELECT * FROM temp;

要以类似的方式实际创建临时表,请使用:

  1. WITH vals (k,100))
  2. SELECT * INTO temporary table temp FROM vals;

猜你在找的Postgre SQL相关文章