通过命令来备份数据库:

通过数据库软件里面的,mysqldump模块来操作,如下:

  mysqldump -u root db1 > db1.sql -p;     //没有-d就是备份的时候:数据表结构和数据都备份(下载)下载下来

  mysqldump -u root -d db1>db1.sql -p;    //有-d就是备份的时候就是:只是备份数据表结构

导入备份的sql文件到数据库里:

  create database db5;

  mysqldump -u root -d db5<db1.sql -p;    //这句话的意思就是,把db1.sql这个备份了的的数据表,导入到db5中 。其实,就是备份中的大于号变成了小于号而已

MySQL数据库进阶

后续将结合案例来运用查询语句!!!!!

  临时表:

(select * from 表名 where num>60) as B //这个就组成了临时表
    用法:
      select sid from (select * from score where num>60) as B ; //这里的sid必须是 * 这里的字段能找到,不然找不到之后就报错

  动态目标查询语句:

  一种写法:
  select
  id,
   name,
   1,
   (select count(1) from tb) //这句号叫做动态目标查询
  from tb2
//值得注意的是,平时我们会经常用到count来做统计,所以在count的这里一般用count(1)或这count(id)来运用就可以解决问题
又是另一种方法:
  SELECT
   student_id,
   (select num from score as s2 where s2.student_id=s1.student_id and course_id = 1) as 语文,
   (select num from score as s2 where s2.student_id=s1.student_id and course_id = 2) as 数学,
   (select num from score as s2 where s2.student_id=s1.student_id and course_id = 3) as 英语
  from score as s1;

  case when作为select目标条件的语句:

         select
course_id,
max(num),
min(num),
min(num)+1,
case when min(num) <10 THEN 0 ELSE min(num) END as c //“case when min(num) <10 THEN 0 ELSE min(num) END ” 有点像三元运算符
from score GROUP BY course_id; select
        course_id,
        avg(num),
        sum(case when num <60 THEN 0 ELSE 1 END),
        sum(1),
        sum(case when num <60 THEN 0 ELSE 1 END)/sum(1) as jgl
     from score
     GROUP BY course_id
     order by AVG(num) asc,jgl desc;

SQL语句的补充

之前我们学习了sql的大部分语句写法,这里我们再补充几个知识点。

记得我们之前讲了sql语句中的联表知识:left join 、right join、inner join

上面的这几个联表其实是属于:左右联表(join)

而与之对应的是:上下联表(union)

  上下联表两种写法,以及他们之间的不同点:

    

      -- 第1、union
        -- 使用union的时候,如果两张表结合之后,存在的记录有值是一模一样的话,会自动删除后面重复的值
      select id name from tb1
      union
      select sid sname from tb2     -- 第2、union all  
        -- 使用union all的时候,不会删除重复的记录        
      select id name from tb1
      union all
      select sid sname from tb2
												

MySQL第二讲 一一一一 MySQL语句进阶的更多相关文章

  1. MySQL实战45讲学习笔记:日志系统(第二讲)

    一.重要的日志模块:redo log 1.通过酒店掌柜记账思路刨析redo log工作原理 2.InnoDB 的 redo log 是固定大小的 只要赊账记录在了粉板上或写了账本上,之后即使掌柜忘记了 ...

  2. MySQL第一讲 一一一一 数据库入门

    一. MySQL简介与安装 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方 ...

  3. MySQL第三讲 一一一一 视图、触发器、函数、存储过程

    1. 视图 1.1 视图前戏 我们之前讲有,临时表的概念. 现在我们创建一个临时表:select * from (select * from tb1 where id between 10 and 1 ...

  4. 如何查找MySQL中查询慢的SQL语句

    如何查找MySQL中查询慢的SQL语句 更多 如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow ...

  5. 如何查找MySQL中查询慢的SQL语句(转载)

    转载自https://www.cnblogs.com/qmfsun/p/4844472.html 如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那 ...

  6. 何在mysql查找效率慢的SQL语句?

    如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启 ...

  7. 深入MySQL(四):MySQL的SQL查询语句性能优化概述

    关于SQL查询语句的优化,有一些一般的优化步骤,本节就介绍一下通用的优化步骤. 一条查询语句是如何执行的 首先,我们如果要明白一条查询语句所运行的过程,这样我们才能针对过程去进行优化. 参考我之前画的 ...

  8. MySql学习 (一) —— 基本数据库操作语句、三大列类型

    注:该MySql系列博客仅为个人学习笔记. 在使用MySql的时候,基本都是用图形化工具,如navicat.最近发现连最基本的创建表的语法都快忘了... 所以,想要重新系统性的学习下MySql,为后面 ...

  9. python 全栈开发,Day60(MySQL的前戏,数据库概述,MySQL安装和基本管理,初识MySQL语句)

    一.MySQL的前戏 在学习Mysql之前,我们先来想一下一开始做的登录注册案例,当时我们把用户的信息保存到一个文件中: #用户名 |密码 root|123321 alex|123123 上面文件内容 ...

随机推荐

  1. Contacts解析

    显示联系人相关类packages/apps/Contacts/src/com/android/contacts/activities/PeopleActivity.javapackages/apps/ ...

  2. Maven中的dependency的scope作用域

    1.test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖 2.compile范围指的是编译范围有效,在编译和打包时都会将依赖存储进去 3.provided依赖:在编译和测试的过程有效,最后 ...

  3. Windows下的Crontab表达式解析DLL的使用

    Linux的crontab工具特别的好用,正好现在工作总有好多定时执行的事 用Windows的定时任务觉得特别Low,哈哈,用C#写个任务触发器 然后再用上Crontab表达式解析DLL,觉得马上就高 ...

  4. Use an Excel RTD Server with DCOM

    费好大劲找到的文章,留存. Use an Excel RTD Server with DCOM 如何使用DCOM的Excel RTD服务器 Microsoft Office Excel 2007,Mi ...

  5. XPath2Doc,一个半自动采集网页生成Word Docx文件的工具,带企查查和天眼查模板

    原始出处:https://www.cnblogs.com/Charltsing/p/XPath2Doc.html 很多人需要从网站采集一些数据填写Word模板,手工操作费时费力还容易出错,所以我给朋友 ...

  6. Android 中数据存储方式有哪些?

    a) 文件存储b) xml,SharedPreferencec) SQLite数据库d) ContentProvidere) 网络

  7. Python_List对象内置方法详解

    目录 目录 前言 软件环境 列表List 修改列表的元素 插入列表元素 extend 将序列中的元素迭代的附加到list中 insert 在指定的索引号中插入一个元素 删除列表元素 del 删除Lis ...

  8. 阶段3 2.Spring_02.程序间耦合_2 编译期依赖

    通过maven可以看到这个资源不存在 找到本地仓库,mysql 5.17确实没有jar包 在pom.xml内把版本改成5.16 5.1.6在本地仓库内是完整的版本 运行我们的测试方法 把依赖注释掉 再 ...

  9. Multi-Object-Edit With Django FormSets

    I had to write a multi-object edit table the other day for a Django project and as such I dove into ...

  10. word2vec高效训练方法

    在word2vec原理中讲到如果每个词向量由300个元素组成,并且一个单词表中包含了10000个单词.回想神经网络中有两个权重矩阵——一个在隐藏层,一个在输出层.这两层都具有300 x 10000 = ...