PostgreSQL IF语句

PostgreSQL IF语句,第1张

概述如何在Postgres中进行这样的查询? IF (select count(*) from orders) > 0THEN DELETE from ordersELSE INSERT INTO orders values (1,2,3); 尝试: DO$do$BEGINIF EXISTS (SELECT 1 FROM orders) THEN DELETE FROM or 如何在Postgres中进行这样的查询?
IF (select count(*) from orders) > 0THEN  DELETE from ordersELSE   INSERT INTO orders values (1,2,3);
尝试:
DO$do$BEGINIF EXISTS (SELECT 1 FROM orders) THEN   DELETE FROM orders;ELSE    INSERT INTO orders VALUES (1,3);END IF;END$do$

要点

>标准sql中没有程序元素. IF statement是默认的程序语言PL / pgsql的一部分.您需要使用DO命令创建一个函数或执行一个ad-hoc语句.
>你需要一个在每个语句的末尾在plpgsql(except for the final END).
>你需要END IF;在IF声明的结尾.
>子选择需要用括号括起来:

IF (SELECT count(*) FROM orders) > 0 ...

要么:

IF (SELECT count(*) > 0 FROM orders) ...

尽管如此,这是相当的,快得多:

IF EXISTS (SELECT 1 FROM orders) ...

替代

你根本不需要额外的SELECT.这样做也一样,有点快:

DO$do$BEGINDELETE FROM orders;IF NOT FOUND THEN   INSERT INTO orders VALUES (1,3);END IF;END$do$
总结

以上是内存溢出为你收集整理的PostgreSQL IF语句全部内容,希望文章能够帮你解决PostgreSQL IF语句所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/1167125.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-01
下一篇2022-06-01

发表评论

登录后才能评论

评论列表(0条)

    保存