做数据库开发的过程中难免会遇到有表数据备份的,而SELECTINTO……和INSERTINTOSELECT……这两种语句就是用来进行表数据复制,下面简单的介绍下:1、INSERTINTOSELECT语句格式:InsertIntoTable2(column1,column2……)Selectvalue1,value2,value3,value4FromTable1或 InsertIntoTable2Select*FromTable1说明:这种方式的表复制必须要求Table2是事先创建好的例:--1.创建表createTABLETable1(avarch...
继续阅读 >
分类:INTO
2022
04-07
04-07
SQL insert into语句写法讲解
方式1、INSERTINTOt1(field1,field2)VALUE(v001,v002); 明确只插入一条Value方式2、INSERTINTOt1(field1,field2)VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);在插入批量数据时方式2优于方式1.【特注】当id为自增,即 id INTPRIMARYKEYAUTO_INCREMENT时,执行insertinto语句,需要将除id外的所有field列举出来(有没有感觉,好不方便,期待mysql提供一个简便方法来标记这...
继续阅读 >
2021
03-17
03-17
细说mysql replace into用法
replace语句在一般的情况下和insert差不多,但是如果表中存在primary或者unique索引的时候,如果插入的数据和原来的primarykey或者unique相同的时候,会删除原来的数据,然后增加一条新的数据,所以有的时候执行一条replace语句相当于执行了一条delete和insert语句。直接上实例吧:新建一个test表,三个字段,id,title,uid, id是自增的主键,uid是唯一索引;CREATETABLE`test`(`Id`int(11)NOTNULLAUTO_INCREMENT...
继续阅读 >
本文信息基于PG13.1。从PG9.6开始支持并行查询。PG11开始支持CREATETABLE…AS、SELECTINTO以及CREATEMATERIALIZEDVIEW的并行查询。先说结论:换用createtableas或者selectinto或者导入导出。首先跟踪如下查询语句的执行计划:selectcount(*)fromtestt1,test1t2wheret1.id=t2.id;postgres=#explainanalyzeselectcount(*)fromtestt1,test1t2wheret1.id=t2.id;...
继续阅读 >
2021
01-09
01-09
postgresql insert into select无法使用并行查询的解决
本文信息基于PG13.1。从PG9.6开始支持并行查询。PG11开始支持CREATETABLE…AS、SELECTINTO以及CREATEMATERIALIZEDVIEW的并行查询。先说结论:换用createtableas或者selectinto或者导入导出。首先跟踪如下查询语句的执行计划:selectcount(*)fromtestt1,test1t2wheret1.id=t2.id;postgres=#explainanalyzeselectcount(*)fromtestt1,test1t2wheret1.id=t2.id;...
继续阅读 >