使用给定的列和数据创建临时表

时间:2018-01-31 03:05:46

标签: sql postgresql netezza temp

我需要在Netezza中创建一个包含下表中数据的临时表。我在Netezza中创建临时表的典型方法是通过

CREATE TEMP TABLE temp_table1 AS
(
 -- statement to fill the data
) DISTRIBUTE ON RANDOM;

如何构建要在内部使用的语句,以便下面的数据在临时表中可用?

+---------+----------+
| bin_val |  bin_cnt |
+---------+----------+
|       0 |        2 |
|       4 |       10 |
|       8 |       15 |
|      12 |       12 |
|      16 |        6 |
|      20 |        1 |
+---------+----------+

PostgreSQL解决方案也会有所帮助。

2 个答案:

答案 0 :(得分:1)

这是你想要的吗?

select v.*
from (values (0, 2), (4, 10), (8, 15), (12, 12), (16, 6), (20, 1)
     ) v(bin_val, bin_cnt)

Here是一个SQL小提琴。

这可能不适用于Netezza,因为它使用的是非常旧版本的Postgres。相反,我认为你可以这样做:

select 0 as bin_val, 2 as bin_cnt union all
select 4, 10 union all
select 8, 15 union all
select 12, 12 union all
select 16, 6 union all
select 20, 1

答案 1 :(得分:-1)

创建临时表MY_TABLE AS 选择 一种, B, C 从 DB1.TABLE1 在非空 LIMIT 100;

------删除表MY_TABLE