作者:瀚高PG实验室 (Highgo PG Lab)- 汀上白沙

PostgreSQL支持两类临时表,会话级和事务级临时表。在会话级别的临时表中,在整个会话的生命周期中,数据一直保存。事务级临时表,数据只存在于这个事务的生命周期中。不指定临时表的属性,

PostgreSQL中,不管是事务级还是会话级临时表,当会话结束时,临时表就会消失。这与oracle数据库不同,在oracle数据库中,只是临时表中的数据消失,而临时表还存在。

示例:

创建临时表temp

使用其他会话查看临时表,可以看到查询不到临时表temp

使用“pg_temp_5.temp”可以查询到temp的信息

关闭创建临时表的会话,使用另一个会话再次查看,表已经被删除。

创建临时表,当前会话可以正常访问临时表中数据

使用另一个会话查询该临时表中的数据,不能查询数据

如果在两个不同的session中创建一个同名的临时表,实际上创建的是两张不同的表。

使用另一会话创建同名临时表 ,示例如下:

创建事务级临时表,示例如下

总结

PostgreSQL临时表是schema下所生成的一个特殊的表,这个schema的名称为“pg_temp_n”,其中n代表数字,不同的session数字不同。

一个会话创建的临时表不能被其他会话访问。

默认情况下,创建的临时表是会话级的,如果需要创建事务。需要添加“on commit delete rows”子句。(注:“on commit”子句形式有三种:“on commit preserve rows”,默认值,会话级;“on commit delete rows”,事务级,事务结束,删除数据;“on commit drop”,事务级,事务结束,删除临时表)

创建临时表的关键字“temporary”可以缩写为“temp”。

PostgreSQL为了与其他数据库创建临时表的语句保持兼容,还没有“GLOBAL”和“LOCAL”关键字,但两个关键字没有用处。

Postgresql临时表相关推荐

  1. Oracle数据库错误代码大全总结

    ORACLE数据库错误代码大全总结 ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会 ...

  2. PostgreSQL全局临时表插件pgtt的使用

    墨墨导读:本文主要介绍PostgreSQL全局临时表插件pgtt的使用. https://github.com/darold/pgtt 前言 PostgreSQL目前到最新12版本只支持本地临时表不支 ...

  3. 关于postgresql中with 临时表的使用,筛选出来当天温度比昨天温度高的数据

    假设我们有一张表temperature,表结构如下 数据如下 现在我们想筛选出来当天温度比昨天高的id,这时候我们就需要用到临时表,首相将数据构造出来,然后再在临时表上筛选 WITH temperat ...

  4. PostgreSQL SQL 语言:并行查询

    本文档为PostgreSQL 9.6.0文档,本转载已得到原译者彭煜玮授权. 1. 并行查询如何工作 当优化器判断对于某一个特定的查询,并行查询是最快的执行策略时,优化器将创建一个查询计划.该计划包括 ...

  5. PostgreSQL操作问题(转载)

    PostgreSQL操作问题 4.1)如何只选择一个查询结果的头几行?或是随机的一行? 如果你只是要提取几行数据,并且你在执行查询中知道确切的行数,你可以使用LIMIT功能. 如果有一个索引与 ORD ...

  6. 插入,在PostgreSQL中重复更新吗?

    本文翻译自:Insert, on duplicate update in PostgreSQL? Several months ago I learned from an answer on Stac ...

  7. PostgreSQL — Prepared Statement 预编译

    目录 文章目录 目录 PREPARE 指令 EXECUTE 指令 DEALLOCATE 指令 EXPLAIN 指令 ANALYZE 指令 ERROR,0A000,"cached plan m ...

  8. PostgreSQL与MySQL比较

    2019独角兽企业重金招聘Python工程师标准>>> 特性 MySQL PostgreSQL 实例 通过执行 MySQL 命令(mysqld)启动实例.一个实例可以管理一个或多个数 ...

  9. postgresql中自定义函数脚本的备份及恢复

    [转自 housonglin1213 的博客]http://blog.csdn.net/housonglin1213/article/details/51005540 1.自定义函数脚本备份 CREA ...

  10. oracle 临时表存在哪里_openGauss魔改PG?它能兼容Oracle的数据库表吗?

    作者介绍 洪烨,openGauss Contributor,多年银行业系统架构设计及DBA实战经验,<DB2数据库内部解析与性能调优>作者. openGauss的前世今生 上一篇看到很多朋 ...

最新文章

  1. 以太坊私链搭建、truffle项目开发
  2. 中国污水处理行投资建议与运营价值分析报告2022-2027年
  3. linux网络编程之用select函数实现io复用(基于TCP)引发的思考
  4. Entropay(欧贝通)
  5. [面试] Thread 中 start() 和 run() 的区别都不知道,还怎么混?
  6. 如何用jQuery获得radio的值
  7. javascript数据结构与算法--散列
  8. Java设计模式(十二)----享元模式
  9. oracle-jde操作界面,JDE项目系统基础培训.ppt
  10. JVM内存管理------GC算法精解
  11. 牛客刷题——剑指offer
  12. android webview 误删,AndroidWebView内核
  13. Excel中度分秒格式(dd°mm′ss″)与十进制度(°)格式互转,角度与弧度互转
  14. sqlmap的简单使用(sql注入)
  15. 计算机的新兴技术在测绘工程领域的应用,测绘新技术在测绘工程测量中应用探讨.doc...
  16. 方向导数(Directional derivatives)
  17. 如何快速学习flex
  18. 移除未排序链表中的重复节点,保留最开始出现的节点
  19. 购物商城html源码asp,购物商城 html
  20. 人脸核身--第二篇--启用 H5人脸认证

热门文章

  1. Echarts地图案例
  2. 深度学习论文: Slicing Aided Hyper Inference and Fine-tuning for Small Object Detection及其PyTorch实现
  3. Netron简单使用教程
  4. 打开计算机硬盘有声音,电脑硬盘有响声总吱吱响的解决方法
  5. 白盒测试:三角形问题实验报告
  6. 实验三 网际协议IP 实验报告
  7. pr 导出视频 黑屏 或者 没有画面
  8. Android DevicePolicyManager 设备管理
  9. Mac 移动硬盘没有推出,再插上不显示移动硬盘解决办法
  10. 生活中的逻辑谬误07.中间立场假两难推理