SQL积累 复制一个表数据到另一个表 SELECT INTO -- INSERT INTO ... SELECT
创建一个新表并复制另一个表的结构和数据到这张表
CREATE TABLE 新建的表名
AS
SELECT * FROM 已经存在的表的表名
其中 AS 可以省略,需要复制指定列结构和数据的时候可以将 * 切换为具体的列名,与一般的 SELECT 查询指定字段写法一致。
SELECT INTO 复制一个表数据到另一张表
(MYSQL 不支持该写法,但支持INSERT INTO … SELECT)
语法示例
- 复制所有列数据(可以当作备份操作)
SELECT * INTO 新表表名 FROM 源表表名;
- 复制指定列数据
SELECT name, sex INTO 新表表名 FROM 源表表名;
- 复制源表指定条件的数据
SELECT * INTO 新表表名 FROM 源表表名 WHERE 源表需要符合的条件;
条件就是一般的 某个字段等于某某某 等条件。
- 复制多个表的数据到一张表内
SELECT 源表表名.源表字段1, 源表2表名.字段1, 源表2表名.源表2字段2INTO 新表表名
FROM 源表表名
LEFT JOIN 源表2表名ON 源表表名.id=源表2表名.pid;
- 使用 SELECT INTO 创建一个新的空表。只需添加使查询没有数据返回的 WHERE 子句即可,例如:
SELECT * INTO 新表表名 FROM 源表表名 WHERE 0=1;
因为 0=1 永不成立,所以无数据返回,则只复制表结构,创建空表。
INSERT INTO … SELECT 从一个表复制数据,把数据插入到一个已存在的表中
- 复制一个表的所有数据到另一个已存在的表
INSERT INTO table2 SELECT * FROM table1;
- 复制指定的列数据到另一个已存在的表中
INSERT INTO table2 (column_name(s)) SELECT column_name(s) FROM table1;
示例:
INSERT INTO table2 (name, sex) SELECT wname, sex FROM table1;
添加条件则如下示例:
INSERT INTO table2 (name, sex) SELECT wname, sex FROM table1 WHERE id=10;
区分
select into from 和 insert into select 都可以用来复制表
主要区别为:
select into from 要求目标表不存在,因为在插入时会自动创建
insert into select from 要求目标表已存在
- 复制表结构及其数据:
create table table_name_new as select * from table_name_old - 只复制表结构:
create table table_name_new as select * from table_name_old where 1=2;
或者:
create table table_name_new like table_name_old - 只复制表数据:
如果两个表结构一样:
insert into table_name_new select * from table_name_old
如果两个表结构不一样:
insert into table_name_new(column1,column2…) select column1,column2… from table_name_old
部分总结来源于各大学习网站
SQL积累 复制一个表数据到另一个表 SELECT INTO -- INSERT INTO ... SELECT相关推荐
- sql server 快照_添加新文章,删除文章,更改快照文件夹路径和SQL Server复制中的数据筛选器行
sql server 快照 In the last articles, we have learned Configuring Snapshot and Transactional SQL Serve ...
- mysql 将a表数据插入b表_查询A表数据插入到B表中 sql
前言: 最近遇到一个 查询A表数据插入到B表中sql的问 所以就发文章记录下,希望能帮助到家 开发环境 win10专业版本(其他操作系统具体安装mysql请百度 ) 准备工作: 安装MySQL 1 m ...
- 用sql语句复制表格或数据
用sql语句复制表格或数据 用sql语句复制表格时,都不会复制primary key等属性 通用(MySQL,SQL Server,Oracle,Sqlite...) 复制数据 MySql 复制表格及 ...
- 读取指定文件夹里多个excel表,并将所有excel表数据整合到一个excel中
1.找出指定文件夹里的所有文件 #-*- encoding: utf-8 -*-# 找出指定文件夹里的所有文件 import osfilePath = 'C:\\Users\\lzk\\Desktop ...
- oracle删除库里的所有表,清空mysql指定库里全部表数据-自动删除所有表,有外键约束的表优先删除...
清空mysql指定库里所有表数据-自动删除所有表,有外键约束的表优先删除 由于要清空数据库数据 ,手动非常麻烦.网上找了一下,有一个Oracle的,参照它,在其上修改一下用于Mysql,把代码奉献如下 ...
- 如何将分表汇总到总表_Excel如何实现将动态的分表数据汇总到总表
将分表数据汇总到总表,需要支持动态更新,这绝对是职场应用中的痛点.很多高手都是用VBA宏代码来搞定,代码难写,不易修改,也不太灵活.事实上,Excel自带的功能就能解决. 分析:解决这个问题最多的方法 ...
- java实现将A表数据转移到B表_解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表(merge into)...
作用:merge into 解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表: 语法: MERGE INTO [your table-name] [rename your table h ...
- sql 两表数据合并_多表查询SQL语句
本篇文章中主要讲述以下内容: 一.表的加法 合并两张表的过程: 然后运用sql语句: select 课程号,课程名称 from course union select 课程号,课程名称 from co ...
- 把多个excel表数据合并到一个工作簿中怎么操作
1.如下图含有两个工作表,工资表含有姓名.年龄.工资等信息,信息表含有姓名.身份证号码.出生日期信息.现在想要将这两个表格相同姓名员工数据合并到一个表中. 2.点击下图选项(Excel工具箱, ...
最新文章
- Combo box的使用
- 【Webkit Blog翻译】深入研究WebRTC | 内有福利
- MySQL 中and 与or的优先级
- java thread 内存泄露_Java ThreadLocal 内存泄露问题分析及解决方法。
- 第六章 Qt布局管理器Layout
- 团队建设及管理上的举措_为什么在副项目上工作是您作为开发人员的最佳举措...
- Mr.J--JavaScript-恶搞小代码
- (文中有惊喜)走进云时代的数据库
- 浅谈linux系统下常见的故障与处理方法
- 关于HTML+CSS3的一些笔记
- 为何要搭建大数据分析平台
- android5.1 不生成odex的方法
- 集成ahci驱动的xp系统_IDE转AHCI模式 for win7+SSD
- sps的process插件安装包_什么是Process插件?在中介和调节效应分析中有哪些优势和不足?如何下载与安装?...
- 最新投影圣经投影赞美诗歌圣经诗歌2020
- 全自动抠图换背景软件下载_智能抠图换背景软件-手挥自动背景更换软件
- 毕业设计之 --- 新闻分类系统
- Python中7种随机函数总结
- 笔记本连接显示器后没有声音
- 基于宜搭的《T恤尺码收集》应用搭建
热门文章
- Android、APP、APK 、华为报感染病毒 a.gray.Bulimia.a 已解决 (精)
- 学习臧圩人Java面试题解惑系列总结
- 天境生物启动A股上市辅导:已实现盈利,臧敬五不再是主要股东?
- NXOPEN/UG二次开发C#---导入igs文件,获得导入的TaggedObject
- spring-boot-starter 自定义
- 给openWrt安装管理界面中文包,顺带安装新界面风格,亲测有效
- MySQL省市区自联表,拿走不谢!!!
- tableviewCell复用 重叠问题
- 2021年中国旅游产业整体现状分析,疫情后市场恢复不及预期,相较疫情前仍有差距「图」
- BUUCTF 派大星的烦恼