我已在PostgreSQL
中准备了两个执行语句,这两个语句都是更新语句。我想将其中两个作为迭代循环运行,例如。
LOOP
EXECUTE stage1
EXECUTE stage2
IF a = b then EXIT;
END IF
END LOOP
但是PostgreSQL
并不喜欢语法。两个准备好的语句在单独运行时工作正常,但它们需要花费一些时间,我需要多次迭代它们,所以我无法手动执行此操作。还有其他方法可以解决这个问题吗?
答案 0 :(得分:0)
简单的sql语言不支持这样的结构。如果您想用PLPGSQL语法编写,则必须编写一个函数来执行此操作:
CREATE FUNCTION some_function() RETURNS void AS $$
--your variable declarations here
BEGIN
--your code here
END;
$$ LANGUAGE plpgsql;
您可以将RETURNS void
替换为您想要返回的类型;