IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 【mysql】使用sql将一个表的数据复制筛选部分行和列到另一个表去 -> 正文阅读

[大数据]【mysql】使用sql将一个表的数据复制筛选部分行和列到另一个表去

事件起因

给客户的系统导入数据,涉及到一些初始的账户、部门、角色(用户与角色的对应关系表什么的),反正也就每个表几千条的样子吧

但是在写后端接口进行文件导入和写sql进行一些数据关联表的导入时出现了一个问题 怎样把一个表的数据比如说id放到另一个表中去

我们常规的插入语句:

insert into 表名(字段名1,字段名2....values(字段名1数据,字段名2数据....)
values(字段名1数据,字段名2数据.....)
....

要想插入多行只有继续向下写values()

总结的sql写法

先将找到的一种sql语句写法写在这儿

insert into table1(fld1, fld2) select fld1, 5 from table2 where ...

插入语句后面接select语句 能够他批量插入一个集合的数据,字段名和顺序需要自己进行对应,里面有select语句也可使用where等sql语句进行一定的数据筛选,从而达到数据从一个表到另一个表的作用

这儿就涉及到另一个写法:
将一个表所有的数据内容直接复制到另一个表中去

select * into table1 from table2

该语句与上面的那个语句有一定的区别:
该语句要求table1表不存在,相当于完全创建了一个新的表,然后将table2表中的内容全部查询出来,然后复制了一份在table1表中去

而前面的第一条语句是对两个已经存在的表的操作,使用的insert into语句:

过程

前提(各个表的结构)
user表:
在这里插入图片描述

user和role(用户和角色的关系表)
在这里插入图片描述
使用 sql 语句将数据表中没有的用户角色关系导入到该表中去(怎样的一个执行过程说明):
在这里插入图片描述

执行的sql语句

下面的语句执行的意思是(将sys_user表中还没有赋予角色的账户赋予一个默认角色id(100000) not in后面的集合就是之前查询出来的账户角色表中已有的用户角色关系的用户id(虽然这儿也可以用sql语句给代替)):

insert into sys_user_role(user_id,role_id) 
select user_id,100000 role_id
from sys_user 
where user_id not in (1,12822,12823,12824,12825,12952,12953,12954,13030,13031,13032,13121,13122,13123,13304,13305,13306,13331,13332,13333,13334,13335,13336,13781,13782,13788,13794,13806,13807,13808,13809,13837,13868,13912,13915,13916,13922,13930,13932,13937,13939,13949,13968,14031,14102,14168,14206,14324,14328,14329,14332,14345,14346,14347,14351,14355,14358,14383,14388,14389,14453,14461,14462,14463,14476,14478,14479,14488,14559)

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-23 10:53:19  更:2022-04-23 10:55:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:45:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码