【发布时间】:2013-06-19 09:07:23
【问题描述】:
由于 RedShift 中不支持用户定义的函数或存储过程,我如何在使用 ParAccel(PostgreSQL 8.0.2 fork)的 RedShift 中实现UPSERT 机制。
目前,我正在尝试使用 IF...THEN...ELSE... 语句来实现 UPSERT 机制 例如:-
IF NOT EXISTS(SELECT...WHERE(SELECT..))
THEN INSERT INTO tblABC() SELECT... FROM tblXYZ
ELSE UPDATE tblABC SET.,.,.,. FROM tblXYZ WHERE...
这给了我错误。因为我正在独立编写此代码,而不将其包含在函数或 SP 中。 那么,有没有实现UPSERT的解决方案。
谢谢
【问题讨论】:
-
感谢您的努力。这更清楚;现在我可以告诉你想要什么了。
-
Redshift 文档的链接:docs.aws.amazon.com/redshift/latest/dg/…