PgSQl临时表创建及应用实例解析

创建前可先删除

drop table tmp0

创建临时表

select * into temp table tmp0 from xxx create index idx_tmp0_inner_cd on tmp0(inner_cd);

查看临时表是否创建,返回0表示未创建,1为创建

select count(*) from pg_class where relname = 'tmp0' 

或者用下面,下面语句在pg和mysql中都适用

Create Table If Not Exists temp.MyTable(
xxx varchar (20) Primary key ,
thTime varchar (20) ,
name varchar (20)
)

同样可以用在删除表中:

DROP TABLE If Exists temp.mjp_temp_update_log

应用例子:

SELECT
  ids,
  code,
   INTO TEMP TABLE tmp0
FROM
  TEMP .m_product_x
WHERE
  TEMP .m_product_x.ids = ''
GROUP BY
  TEMP .m_product_x.code,
  TEMP .m_product_x.ids;

CREATE INDEX idx_tmp0_inner_cd ON tmp0 (code);

SELECT
*
FROM
  TEMP .m_product
INNER JOIN tmp0 ON TEMP .m_product.code = tmp0.code
WHERE
  TEMP .m_product.ids = ''
ORDER BY
  tmp0.xx,
  tmp0.ss;
DROP TABLE tmp0;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 简单的pgsql pdo php操作类实现代码

    核心代码: /* *pgsql类 */ class pgdb { public $pdo; public static $PDOInstance; public $config; public $data; public $filed = '*'; public $table; public $limit; public $order; public $where; public $left; const LOGIN = 7; const USER = 1; const GROUP = 2; c

  • MySQL锁阻塞的深入分析

    日常维护中,经常会碰到线程被阻塞,导致数据库响应非常慢,下面就看看如何获取是哪个线程导致了阻塞的. 1. 环境说明 RHEL 6.4 x86_64 + MySQL 5.6.19 事务隔离级别:RR 2. 测试过程 3. 查看锁阻塞线程信息 这里用几中方法进行分析: 3.1  使用show processlist查看 MySQL [(none)]> show processlist; +----+------+-----------+------+---------+------+--------

  • PostgreSQL教程(二十):PL/pgSQL过程语言

    一.概述: PL/pgSQL函数在第一次被调用时,其函数内的源代码(文本)将被解析为二进制指令树,但是函数内的表达式和SQL命令只有在首次用到它们的时候,PL/pgSQL解释器才会为其创建一个准备好的执行规划,随后对该表达式或SQL命令的访问都将使用该规划.如果在一个条件语句中,有部分SQL命令或表达式没有被用到,那么PL/pgSQL解释器在本次调用中将不会为其准备执行规划,这样的好处是可以有效地减少为PL/pgSQL函数里的语句生成分析和执行规划的总时间,然而缺点是某些表达式或SQL命令中的错

  • mysql查看死锁与去除死锁示例详解

    1.查询进程 show processlist 2. 查询到相对应的进程,然后 kill id 验证(kill后再看是否还有锁) 2.查询是否锁表 show OPEN TABLES where In_use > 0; 示例: 新建一个会话执行如下的显示锁示例 LOCK TABLES account_data.account READ; SELECT SLEEP(160); UNLOCK TABLES account_data.account; 另开启一个会话检查锁表情况: mysql> sho

  • mysql插入前判断数据是否存在的操作

    业务场景:需要记入访客的访问情况,但不能重复记入 可以插入前进行判断要插入的数据是否存在业务代码如下 : INSERT INTO t_topic_vistor(user_id,topic_code) SELECT '218', 'XQ33019920170811142528217' FROM DUAL WHERE NOT EXISTS(SELECT * FROM t_topic_vistor WHERE user_id = 218 and topic_code='XQ33019920170811

  • C#使用EF连接PGSql数据库的完整步骤

    前言 由于项目需要,使用到了PGSql数据库,说实话这是第一次接触并且听说PGSql(PostgreSQL)关系型数据库,之前一直使用的都是SqlServer,一头雾水的各种找资源,终于将PGSql与C#的EF连接起来,可以像使用SQLServer一样使用PGSql了. PGSql目前有一个pgAdmin4的管理工具,下载之后就可以直接访问我们的数据库了. PGAdmin4下载 本地下载 1.为了演示方便,我们新建一个控制台程序,同时新建一个Entity的类库,后续添加实体模型使用. 2.我们点

  • Mysql查看死锁与解除死锁的深入讲解

    前言 前段时间遇到了一个Mysql 死锁相关的问题,整理一下. 问题描述:Mysql 的修改语句似乎都没有生效,同时使用Mysql GUI 工具编辑字段的值时会弹出异常. 什么是死锁 在解决Mysql 死锁的问题之前,还是先来了解一下什么是死锁. 死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等的进程称为死锁进程. 死锁的表现 死锁的具体表现有两种: Mysql 增改语句无

  • pgsql查询优化之模糊查询实例详解

    前言 一直以来,对于搜索时模糊匹配的优化一直是个让人头疼的问题,好在强大pgsql提供了优化方案,下面就来简单谈一谈如何通过索引来优化模糊匹配 案例 我们有一张千万级数据的检查报告表,需要通过检查报告来模糊搜索某个条件,我们先创建如下索引: CREATE INDEX lab_report_report_name_index ON lab_report USING btree (report_name); 然后搜个简单的模糊匹配条件如 LIKE "血常规%",可以发现查询计划生成如下,索

  • PgSQl临时表创建及应用实例解析

    创建前可先删除 drop table tmp0 创建临时表 select * into temp table tmp0 from xxx create index idx_tmp0_inner_cd on tmp0(inner_cd); 查看临时表是否创建,返回0表示未创建,1为创建 select count(*) from pg_class where relname = 'tmp0' 或者用下面,下面语句在pg和mysql中都适用 Create Table If Not Exists tem

  • jQuery创建DOM元素实例解析

    本文实例讲述了jQuery创建DOM元素的使用技巧.分享给大家供大家参考.具体分析如下: 利用DOM方法创建元素节点,通常要将document.createElement().document.createTextNode().appendChild()配合使用,十分麻烦. 而jQuery使用$就可以直接创建DOM元素 复制代码 代码如下: var oNewP = $("<p>使用jQuery创建的内容</p>"); 以上代码等同于javascript 复制代码

  • C#类的创建与初始化实例解析

    本文以一个实例简单实现了类的创建与初始化,实现代码如下所示: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace C_program_test { class Person { public string Name; //因为Name没有赋值,而它是string类型的,所以它的默认值就是Null public int Age; //因为Age和Gender也

  • Java Socket编程心跳包创建实例解析

    1.什么是心跳包? 心跳包就是在客户端和服务器间定时通知对方自己状态的一个自己定义的命令字,按照一定的时间间隔发送,类似于心跳,所以叫做心跳包. 用来判断对方(设备,进程或其它网元)是否正常运行,采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经离线.用于检测TCP的异常断开.基本原因是服务器端不能有效的判断客户端是否在线,也就是说,服务器无法区分客户端是长时间在空闲,还是已经掉线的情况.所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已.代码就是每隔几分

  • oracle 临时表详解及实例

    在Oracle8i或以上版本中,可以创建以下两种临时表: 1.会话特有的临时表 CREATE GLOBAL TEMPORARY <TABLE_NAME> ( <column specification> ) ON COMMIT PRESERVE ROWS: 2.事务特有的临时表 CREATE GLOBAL TEMPORARY <TABLE_NAME> ( <column specification> ) ON COMMIT DELETE ROWS: CREA

  • Java Web开发入门书籍实例解析(总结一)

    从事Java Web开发这一段时间来,对Java 面向对象的思想和MVC开发模式可以说已经熟悉了.我当前参与的项目使用的框架是Spring.SpringMVC.Hibernate.下面我们小编给大家整理一篇教程帮助大家学习javaweb相关知识,感兴趣的朋友可以参考下. 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 1.静态web资源(如html 页面):指w

  • Java对象的XML序列化与反序列化实例解析

    上一篇文章我们介绍了java实现的各种排序算法代码示例,本文我们看看Java对象的xml序列化与反序列化的相关内容,具体如下. XML是一种标准的数据交换规范,可以方便地用于在应用之间交换各类数据.如果能在Java对象和XML文档之间建立某种映射,例如Java对象的XML序列化和反序列化,那么就可以使Java的对象方便地与其他应用进行交换. java.beans包里面有两个类XMLEncoder和Decoder,分别用于将符合JabaBeans规范的Java对象以XML方式序列化和反序列化.以下

  • Vuejs第八篇之Vuejs组件的定义实例解析

    本文参考官方文档整理的一篇更加细致代码更加安全的一篇适合新手阅读学习吧教程. 本篇资料来于官方文档: http://cn.vuejs.org/guide/components.html 什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展. 组件的定义 ①组件的作用: [1]扩展HT

  • 使用smartupload组件实现jsp+jdbc上传下载文件实例解析

    SmartUpload组件只有5个分别是:File.Files.Request.SmartUpload.SmartUploadException类,其中,File代表用户上传的文件,Files代表用户上传的多个文件,Request相当于HttpServletRequest的功能,用于获取表单数据,SmartUpload是最核心的类,负责文件上传下载,SmartUploadException是自定义异常.    SmartUpload的基本使用思路如下: jsp前台代码表单提交 <form act

  • 实例解析Java中的构造器初始化

    1.初始化顺序 当Java创建一个对象时,系统先为该对象的所有实例属性分配内存(前提是该类已经被加载过了),接着程序开始对这些实例属性执行初始化,其初始化顺序是:先执行初始化块或声明属性时制定的初始值,再执行构造器里制定的初始值. 在类的内部,变量定义的先后顺序决定了初始化的顺序,即时变量散布于方法定义之间,它们仍就会在任何方法(包括构造器)被调用之前得到初始化. class Window { Window(int maker) { System.out.println("Window(&quo

随机推荐