【问题标题】:Creating views in redshift在 redshift 中创建视图
【发布时间】:2014-11-03 12:37:26
【问题描述】:

我现在正在编写一个代码,它必须在给定的日期范围内多次访问事务文件。我想知道是否可以设置我的表格的“视图”以允许在代码开头进行一次删除(而不影响下面的表格),以便始终在整个代码中应用日期范围

因此,在一个简化的示例中,将代码从...更改为...

SELECT    SUM(sales)  
FROM      trans_file
WHERE     date_field BETWEEN '2012-01-01' AND '2012-01-31'

到这里……

DELETE
FROM    trans_file
WHERE   date_field NOT BETWEEN '2012-01-01' AND '2012-01-31'

SELECT    SUM(sales)  
FROM      trans_file

【问题讨论】:

    标签: amazon-redshift


    【解决方案1】:

    你可以做的是先执行Deep Copy
    多次访问数据,然后删除“视图”,如下所示:

    CREATE TABLE trans_file_view AS (
        SELECT * FROM trans_file 
        WHERE date_field BETWEEN '2012-01-01' AND '2012-01-31'
    );
    
    SELECT SUM(sales) FROM trans_file_view;
    ...next SELECT statements...
    
    DROP TABLE trans_file_view;
    

    参考书目:
    你可以阅读更多关于Deep Copy

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-07
      • 2019-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多