大家好,我是jacky,很高兴继续跟大家分享《MySQL数据分析实战》课程,前面的课程基本上我把MySQL的原理都做了一定的介绍,有好多朋友说学习MySQL是没有逻辑的,其实jacky是非常不认同的,学习是没有捷径的,但一定有规律,学习就是一个总结规律举一反三的过程;对于MySQL来说,只有先了解我们要做什么,我们才能相应的操作,大家说是不是?

从本节课程开始,到这门课程结束,我们都是围绕SQL语句展开的,这个小节很特殊,我先给大家做一个SQL 语句的热身,让大家现在头脑里先有这样一个印象,就是SQL语句到底是跟什么,SQL是什么,SQL有什么用;

在文章的最后,jacky会给大家梳理两个SQL语句学习的框架逻辑,我们之后的学习,也会按照这连个框架逻辑展开;

也就是说,本小节课程,jacky主要介绍三部分内容:第一部分:SQL是什么?第二部分:SQL怎么用;第三部分:SQL的两个学习框架

好,现在开始我们SQL的热身之旅吧

(一)SQL是什么?

SQL是什么?一句话概括:SQL是为操作数据库而开发的语言;

既然是语言就得有规则,那么SQL 的规则是什么呢?

  • SQL的两大规则

    • 书写规则

    • 语法规则

  • 本小节课程,jacky只给大家介绍SQL的书写规则,因为语法规则,我们说学习SQL语句,就是学习它的语法规则,所以我们之后要学的都是SQL的语法规则,这里就不能一一阐述了;

1.关于书写的四条规则

  • 规则1:SQL语句要以英文分号结尾

    • 这个就不做过多解释了,就像汉语的句子一样,汉语句子用句号结尾;同样,一条SQL语句可以描述一个数据库操作,所以SQL语句用分号结尾
  • 规则2:SQL语句不区分大小写

    • SQL是不区分关键字大小写的,比如我们后面要讲的关键字selcect,不管我们写成SELECT还是select,解释都是一样的,表名和列名也是一样,但是大多是程序员还是依据下面的大小写规则来写的,这里也跟大家分享一下,就是:

      • 关键字大写;

      • 表名的首个字母大写;

      • 除此之外,其余都小写;

  • 规则3:字符串,日期,和数字的书写方式是固定的;

    • 字符串:单引号 ,例如:’abc’

    • 日期:通常用’年-月-日’的格式,例如:’2018-02-23’

    • 数字:不用使用任何记号标识,直接写即可;

  • 规则4:SQL语句的单词之间需使用半角空格或换行符来进行分隔

2.SQL的4个功能组成

根据指令种类不同,SQL语句可以分为以下三类:

2.1 DDL(Data Definition Language,数据定义语言)

  • DDL包含以下几种指令

    • create:创建数据库和表等对象

    • drop:删除数据库和表等对象

    • alter:修改数据库和表等对象的结构

2.2 DML(Data Manipulation Language,数据操作语言)

  • DML包含以下几种指令

    • select:查询表中的数据

    • insert:向表中插入新数据

    • update:变更表中的数据

    • delete:删除表中的数据

2.3 DCL(Data Control Language,数据控制语言)

  • DCL包含以下 几种命令

    • grant:赋予用户操作权限

    • revoke:取消用户的操作权限

在实操中,我们使用的SQL语句中有90%属于DML,本课程也会以DML为中心进行讲解

(二)SQL怎么用?

那么SQL到底要怎么用,我们来具体的实操下,在前面数据库设计之三大范式的课程中,我们是不是看到了SQL语句了,下面作为第一次学习SQL语句的初学者,jacky总结了XX条最基本的MySQL指令,大家打开电脑,跟着jacky一起敲击代码,感受以下SQL的魅力

2.1 XX条最基本的MySQL指令

1)登录

1))连接服务器

  • Windows版命令:

    • net start mysql

    • 或者 C:\mysql-5.5.20-winx64\mysql-5.5.20-winx64\mysql

  • Mac版命令:

    • sudo /usr/local/mysql/support-files/mysql.server start

2)) 连接客户端

  • Windows版命令:

    • C:\mysql-5.5.20-winx64\mysql-5.5.20-winx64\mysql -u root -p
  • Mac版命令:

    • mysql -u root -p

2)查看数据库

  • 查看我们服务器下有多少数据库
show databases;

3)切换数据库

use test;

4)查看数据库中有哪些表

show tables;
  • 前提是必须切换到数据库里面去,才能用show tables去看表

5)查看表结构或表字段

desc user;

6)查看表记录(表里面的记录)

select * from user;

7)退出mysql终端

exit;

(三)SQL的两大学习框架

大家有有没有跟着jacky一起敲击的上面的代码,大家是不是对SQL语句有了一定的感觉了是吗?那么,接下来,我们是不是该系统的学习它了,那么,面对纷杂无序的SQL语句,我们该怎么的逐步学习呢?或者说我们该捋着怎样的逻辑线学习呢?

  • jacky说,SQL的学习有大学习框架;

3.1 框架一:SQL指令对象框架

  • SQL语句3大指令框架对象

    • 数据库级别

    • 表级别

    • 数据行级别
  • 数据库级别和表级别不重要,因为它们都是一次性的操作,我们创建也只能创建一次数据库,创建表也创建一次就好了,紧接着重复操作的就是表里面的数据;

3.2 框架二:SQL的功能框架

  • 四个字:增、删、改、查

3.3 总结

  • 如果我们把这两大框架结合起来,也就把所有的SQL语句都囊括进去了,即:

    • 数据库:增、删、改、查;

    • 表:增、删、改、查;

    • 表中数据:增、删、改、查;

大家可能从不同的渠道都听到:MySQL是没有什么规律和层次的,通过这次课,jacky要告诉你,其实MySQL的逻辑性是很强的,接下来的学习,jacky也会按照上面的框架一一展开,好,这节课jacky就跟大家分享到这,感谢大家,再见!

MySQL数据分析(7)-SQL的两大学习框架的更多相关文章

  1. Java 学习笔记 两大集合框架Map和Collection

    两大框架图解 Collection接口 由第一张图,我们可以知道,Collection接口的子接口有三种,分别是List接口,Set接口和Queue接口 List接口 允许有重复的元素,元素按照添加的 ...

  2. MySQL数据分析实战-朱元禄-专题视频课程

    MySQL数据分析实战-496人已学习 课程介绍        本套课程由知名数据分析博主jacky老师录制,深入浅出讲解MySQL数据分析,从实战角度出发,帮助大家制胜职场!课程收益    1.学会 ...

  3. MySQL数据分析-(8)SQL基础操作之库操作

    前面我们讲了学习SQL的两个逻辑框架,jacky说了这样一个逻辑:库是为了存储表的,所以一定是先有库才有表:同样的道理,有表才有表中的数据,是吧,肯定是这个逻辑:那么,今天jacky就捋着这个逻辑从库 ...

  4. MySQL数据分析-(10)SQL基础操作之表操作

    大家好,我是jacky,很高兴跟大家继续分享MySQL数据分析实战课程,前面我们学习了库层面增删改查的SQL语句,这次课jacky将给大家介绍表层面的增删改查, (一)本课时的学习逻辑 表层面的增删改 ...

  5. MySQL命令执行sql文件的两种方法

    MySQL命令执行sql文件的两种方法 摘要:和其他数据库一样,MySQL也提供了命令执行sql脚本文件,方便地进行数据库.表以及数据等各种操作.下面笔者讲解MySQL执行sql文件命令的两种方法,希 ...

  6. MySQL导入SQL文件过大或连接超时的解决办法/在navcat执行sql卡在0%

    set global max_allowed_packet=100 000 000;set global net_buffer_length=100000;SET GLOBAL  interactiv ...

  7. MySQL两大存储引擎:MyISAM和InnoDB

    Mysql有两大常用的存储引擎MyISAM,InnoDB,默认的形式是前者. 两者基本的差别是对事务处理.外键和行级锁的主持上,InnoDB支持事务处理.外键等高级特性,而MyISAM不支持.MyIS ...

  8. 关于fmri数据分析的两大类,四种方法

    关于fmri数据分析的两大类,四种方法: 数据驱动: tca:其实这种方法,主要是提取时间维的特征.如果用它来进行数据的分析,则必须要利用其他的数据方法,比如结合ICA. ica:作为pca的一般化实 ...

  9. mysql与sql server参照对比学习mysql

    mysql与sql server参照对比学习mysql 关键词:mysql语法.mysql基础 转自桦仔系列:http://www.cnblogs.com/lyhabc/p/3691555.html ...

随机推荐

  1. C# EF & linq 常用操作

    一.EF的左连接 在EF中,当在dbset使用join关联多表查询时,连接查询的表如果没有建立相应的外键关系时,EF生成的SQL语句是inner join(内联),对于inner join,有所了解的 ...

  2. 一篇文章彻底搞懂异步,同步,setTimeout,Promise,async

    之前翻看别的大佬的博客看到了关于setTimeout,promise还有async执行顺序的文章.观看了几篇之后还是没有怎么看懂,于是自己开始分析代码,并整理了此文章,我相信通过此文章朋友们能对异步同 ...

  3. HTTP method GET is not supported by this URL

    Servlet eroor:HTTP method GET is not supported by this URL 错误提示: type: Status report message: HTTP m ...

  4. [NOIP2018模拟赛10.25]瞎搞报告

    闲扯 最近有点颓,都修到好晚,早上起来和吔shi一样难受 忍着困意把题面看完,发现啥也不会,又是一场写暴力的模拟赛 T1发现似乎可以DP,顺手码了个 T2像个最小瓶颈路板子,但是只做过N^2算法的.. ...

  5. 把一个质量为M0 的物体加速到 时间慢100倍 需要多大能量

    洛伦兹系数  γ = 100: 运动时候的质量  M = γM0 速度   v = c*sqrt(1-1/γ2) E = 1/2 * m0c2  *γ* (1-1/γ2) 如果一个60kg 的人想要加 ...

  6. css布局笔记

    1.display   block块级元素(div.p等) inline 行内元素(a.span等) 常见的例子:把li修改成inline ,制作成水平菜单 2.max-width 来适应不同浏览器窗 ...

  7. shell取消键盘回显

    使用下面这个命令取消回显 stty -echo   使用下面这个命令打开回显   stty echo

  8. redis缓存击穿和缓存雪崩

    工作中经常会用到redis来做缓存,以防止后台db挂掉.但是db数据一般都在10T以上,不可能把mysql中的数据全部放入redis中,所以一般是将一些热key放入redis中. 缓存击穿 一个请求先 ...

  9. pytorch训练模型的一些坑

    1. 图像读取 opencv的python和c++读取的图像结果不一致,是因为python和c++采用的opencv版本不一样,从而使用的解码库不同,导致读取的结果不同. 详细内容参考:https:/ ...

  10. python3 matplotlib

    一.matplotlib数据可视化 1.https://matplotlib.org/ 2.figure图形窗口:figsize窗口大小,label轴标签:title标题:lim限制:plot绘图:s ...