暂无图片
postgresql有goto的语法吗?
我来答
分享
暂无图片 匿名用户
postgresql有goto的语法吗?

postgresql有goto的语法吗?

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
李宏达

没有

暂无图片 评论
暂无图片 有用 0
打赏 0
shunwahⓂ️

postgresql不支持goto的语法
可在模拟GOTO语句的实现 (不过也不建议用或慎用)
PostgreSQL 的 PL/pgSQL并不支持 GOTO 跳转,但某些时候 GOTO 确实能给我们带来便利,伪代码:

i = 0;

label: goto_label
  i = i + 1
  if (i < 100)
    goto goto_label
复制

这种情况我们可以这样模拟:

i = 0;
<<goto_label>>
LOOP
  i = i + 1;

  IF i < 100 THEN
    CONTINUE goto_label;
  END IF;

  EXIT goto_label;
END LOOP;
复制

复杂状况,如果是嵌套式跳转,伪代码:

i = 0;
k = 0;

label: goto_label_i
  i = i + 1

  label: goto_label_k
    k = k + 1
    if (k < i)
      goto goto_label_k

  if (i < 100)
    goto goto_label_i
复制

如下:

i = 0;
k = 0;
<<goto_label_i>>
LOOP
  i = i + 1;

  <<goto_label_k>>
  LOOP
    k = k + 1;
    IF k < i THEN
      CONTINUE goto_label_k;
    END IF;

    EXIT goto_label_k;
  END LOOP goto_label_k;

  IF i < 100 THEN
    CONTINUE goto_label_i;
  END IF;

  EXIT goto_label_i;
END LOOP goto_label_i;
复制
暂无图片 评论
暂无图片 有用 0
打赏 0

没有

暂无图片 评论
暂无图片 有用 1
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
关于autovacuum
回答 2
很好
postgresql 会自动analyze分析表吗?
回答 1
在默认的PostgreSQL配置中,autovacuum守护进程是打开的,它能自动地分析表,并收集表的统计信息。当autovacuum关闭时,需要周期性地,或者在表的大部分内容变更后运行ANALYZE
pgbackrest的问题
回答 2
最新版pgbackrest支持pg9.0以上版本。官方未提供rpm包。需要自行编译,编译时自动匹配版本,可参见源码:https://github.com/pgbackrest/pgbackrest/t
postgresql数据库在执行任何增删改都没一直执行,无法终止
回答 2
测试环境
pg_basebackup搭建从库报错
回答 3
最后在data/global目录下删除了pginternalbak.init文件,pgbasebackup命令执行成功
物理复制的启动和停止顺序?
回答 1
在PostgreSQL物理流复制架构中(例如一主一从),进行系统级维护时,通常推荐的停启顺序如下:停止(关库)顺序:先停止从库(Standby):先关闭从库可确保从库不会在主库关闭后反复尝试连接,从而
华为云裸金属 部署11g RAC,共享盘为一块独立的高性能磁盘,划分三个分区用于ASM(OCR/DATA/FRA),请问是否可行?
回答 1
为什么不弄3块盘呢?如果磁盘不够用的话,我觉得adg也是个不错的选择
什么是数据库范式?
回答 2
已采纳
数据库范式是一种用于设计关系型数据库的规范化原则。它定义了关系数据库中数据的组织方式,以确保数据的一致性、减少冗余和提高数据的完整性。常见的数据库范式有以下几种:第一范式(1NF):要求数据库中的每个
在PostgresSQL V10 中,WAL日志保存在 pg_wal 中,每个wal文件默认是多大? A 16MB B 64MB C 32MB D 8MB
回答 1
已采纳
A每个wal文件默认是16MB
postgreSQL 14很多软件连不上,连接超时,怎么排查?
回答 2
大概率是IP没有访问权限的问题吧,看下pghba.conf文件吧,