mysql/mariadb将选择查询的结果重新生成一张新表格
比如想要生成类似如下的表格
mysql> select student.*,sc.cno,course.cname,sc.grade,course.cpno,course.ccredit from student,sc,course where student.sno=sc.sno and sc.cno=course.cno;
第一种直接生成:
mysql> create table temp(select student.*,sc.cno,course.cname,sc.grade,course.cpno,course.ccredit from student,sc,course where student.sno=sc.sno and sc.cno=course.cno);
Query OK, rows affected (0.09 sec)
Records: Duplicates: Warnings: mysql> show tables;
+-------------------+
| Tables_in_groupdb |
+-------------------+
| course |
| dept |
| emp |
| jwc |
| salgrade |
| sc |
| student |
| temp |
+-------------------+
rows in set (0.05 sec)
mysql> select * from temp;
第二种先创建一个表格:
首先查看各个表格的结构:
mysql> desc student;desc sc;desc course; +-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| sno | varchar() | NO | PRI | NULL | |
| sname | varchar() | YES | UNI | NULL | |
| ssex | varchar() | YES | | NULL | |
| sage | smallint() | YES | | NULL | |
| sdept | varchar() | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
rows in set (0.05 sec) +-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| sno | varchar() | NO | PRI | NULL | |
| cno | varchar() | NO | PRI | NULL | |
| grade | smallint() | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
rows in set (0.05 sec) +---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| cno | varchar() | NO | PRI | NULL | |
| cname | varchar() | YES | | NULL | |
| cpno | varchar() | YES | MUL | NULL | |
| ccredit | smallint() | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
rows in set (0.05 sec)
再对表格进行创建并插入数据:
mysql> create table jwc (sno varchar() not null,sname varchar() not null,ssex varchar(),sage smallint(),sdept varchar(),cno varchar(),cname varchar(),grade smallint(),cpno varchar(),ccredit smallint());
Query OK, rows affected (0.67 sec) mysql> insert into jwc(select student.*,sc.cno,course.cname,sc.grade,course.cpno,course.ccredit from student,sc,course where student.sno=sc.sno and sc.cno=course.cno);
Query OK, rows affected (0.06 sec)
Records: Duplicates: Warnings: 0
mysql> desc temp;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| sno | varchar(11) | NO | | NULL | |
| sname | varchar(20) | YES | | NULL | |
| ssex | varchar(2) | YES | | NULL | |
| sage | smallint(6) | YES | | NULL | |
| sdept | varchar(20) | YES | | NULL | |
| cno | varchar(4) | NO | | NULL | |
| cname | varchar(40) | YES | | NULL | |
| grade | smallint(6) | YES | | NULL | |
| cpno | varchar(4) | YES | | NULL | |
| ccredit | smallint(6) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
10 rows in set (0.05 sec)
2018-04-30
mysql/mariadb将选择查询的结果重新生成一张新表格的更多相关文章
- MySQL/MariaDB数据库的查询缓存优化
MySQL/MariaDB数据库的查询缓存优化 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL架构 Connectors(MySQL对外提供的交互接口,API): ...
- mysql/mariadb学习记录——查询
连接查询:同时设计两个及以上的表的查询 连接条件或连接谓词:用来连接两个表的条件一般格式: [<表名1>]<列名1> <比较运算符> [<表名2>]&l ...
- mysql/mariadb学习记录——查询2
Alias——使用一个列名别名AS 关键字: mysql> select sno as studentId,sname as studentName from student; +------- ...
- MySQL/MariaDB 版本选择
ALPHA.BETA.Release Candidate(RC).Release.GA等版本号的意义 MySQL数据库会存在很多版本,在这么多的版本中,我们如何进行选择,那么,首先我们要了解各个版本号 ...
- mysql/mariadb学习记录——查询3(AVG、SUM、COUNT)函数
AVG() 求平均数函数: //求emp表中的sal属性的平均值 mysql> select avg(sal) as salAverage from emp; +-------------+ | ...
- MySQL/MariaDB表表达式(3):视图
视图是表表达式的一种,所以它也是虚拟表.对视图操作的时候会通过语句动态的从表中临时获取数据. 1.创建.修改视图 CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED ...
- mysql系列-⼀条SQL查询语句是如何执⾏的?
⼀条SQL查询语句是如何执⾏的? ⼤体来说,MySQL 可以分为 Server 层和存储引擎层两部分 Server 层 Server 层包括连接器.查询缓存.分析器.优化器.执⾏器等,涵盖 MySQL ...
- Mariadb/MySQL数据库单表查询基本操作及DML语句
Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...
- mysql/mariadb学习记录——连接查询(JOIN)
//本文使用的数据表格//persons表中id_p为主键//orders表中id_o为主键,id_p为外键参考persons表中的id_p mysql> select * from perso ...
随机推荐
- SLAM会被深度学习方法取代吗?
日益感觉到自己对深度学习的理解比较肤浅,这段且当做是以前的认识. 上上周去围观了泡泡机器人和AR酱联合举办的论坛.在圆桌阶段,章国峰老师提了一个问题:SLAM会被深度学习方法取代吗?这是一个很有趣的话 ...
- Android内核漏洞利用技术实战:环境搭建&栈溢出实战
前言 Android的内核采用的是 Linux 内核,所以在Android内核中进行漏洞利用其实和在 一般的 x86平台下的 linux 内核中进行利用差不多.主要区别在于 Android 下使用的是 ...
- oracle 用户创建、修改、删除
创建用户: create user test identified by test; 修改密码: 1.alter user test identified by mima; 2.passw[ord] ...
- 【AOP】spring 的AOP编程报错:[Xlint:invalidAbsoluteTypeName]error
AOP来发过程中,报错如下: warning no match for this type name: net.shopxx.wx.institution.controller [Xlint:inva ...
- 干货:如何使用N点虚拟管理系统?
N点虚拟主机管理系统怎么用呢?最近有许多朋友问我关于这款虚拟主机管理系统如何使用?在讲如何使用N点虚拟主机管理系统之前,我们先来了解一下N点虚拟主机管理系统的介绍. N点虚拟主机管理系统 ...
- gitbook 入门
安装 gitbook 插件 npm install gitbook-cli -g 或者 yarn global add gitbook-cli 初使化目录 gitbook init 会发现目录下面多了 ...
- 封装用于解析NSDate的便利的类
封装用于解析NSDate的便利的类 此类可以从NSDate中解析出年份,月份,日期,时,分,秒,毫秒,足够用来做好多事情了,现提供源码如下: 以下是核心的类: TimeInfo.h 与 TimeInf ...
- Python学习---爬虫学习[requests模块]180411
模块安装 安装requests模块 pip3 install requests 安装beautifulsoup4模块 [更多参考]https://blog.csdn.net/sunhuaqiang1/ ...
- eclipse中 项目-->属性-->为什么没有deployment assembly 选项
原因: 因为当前的maven工程不是web工程,需要转换成web工程. 解决方法: 右击工程属性,找到Project Facets,选择Dynamic Web Module,2.5 点击apply.这 ...
- 铁乐学python_day02-作业
1.判断下列逻辑语句的True,False. 1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 解题思路 ...