RedShift更新:错误:XX000:目标表必须是等值连词谓词

时间:2017-07-25 12:40:25

标签: amazon-redshift

我将开始研究RedhShift,所以我开始轻松查询。 但有一个简单的查询,它不起作用。 这是出现的错误,我不明白为什么。错误:XX000:目标表必须是等值连词谓词的一部分

  UPDATE table1  SET    org='99'   from (SELECT  '100000' AS org   FROM     table2) yyy

我知道查询很简单,但是我通过连接选择做了很多更新,我想知道更新工作的正确方法。

谢谢

2 个答案:

答案 0 :(得分:0)

如果您想获得去年仅有销售的信息,则应该出现WHERE条款中的适当条件。 对于Oracle,您可以使用以下查询:

SELECT date,
  product,
  sum(sales) over (partition by product order by date) as cumulative 
FROM sales
WHERE date >= add_months(sysdate, -12)

答案 1 :(得分:0)

假设没有错过月份且您想要每个产品的总销售额,您可以使用以下查询 -

SELECT "Date"
    , "Product"
    , "Sales"
    , SUM("Sales") OVER (PARTITION BY "Product" ORDER BY "Date" ROWS BETWEEN 11 PRECEDING AND CURRENT ROW) AS Cumulative
FROM Sales;

SQLFiddle