MySQL数据分析(7)-SQL的两大学习框架
大家好,我是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的两大学习框架的更多相关文章
- Java 学习笔记 两大集合框架Map和Collection
两大框架图解 Collection接口 由第一张图,我们可以知道,Collection接口的子接口有三种,分别是List接口,Set接口和Queue接口 List接口 允许有重复的元素,元素按照添加的 ...
- MySQL数据分析实战-朱元禄-专题视频课程
MySQL数据分析实战-496人已学习 课程介绍 本套课程由知名数据分析博主jacky老师录制,深入浅出讲解MySQL数据分析,从实战角度出发,帮助大家制胜职场!课程收益 1.学会 ...
- MySQL数据分析-(8)SQL基础操作之库操作
前面我们讲了学习SQL的两个逻辑框架,jacky说了这样一个逻辑:库是为了存储表的,所以一定是先有库才有表:同样的道理,有表才有表中的数据,是吧,肯定是这个逻辑:那么,今天jacky就捋着这个逻辑从库 ...
- MySQL数据分析-(10)SQL基础操作之表操作
大家好,我是jacky,很高兴跟大家继续分享MySQL数据分析实战课程,前面我们学习了库层面增删改查的SQL语句,这次课jacky将给大家介绍表层面的增删改查, (一)本课时的学习逻辑 表层面的增删改 ...
- MySQL命令执行sql文件的两种方法
MySQL命令执行sql文件的两种方法 摘要:和其他数据库一样,MySQL也提供了命令执行sql脚本文件,方便地进行数据库.表以及数据等各种操作.下面笔者讲解MySQL执行sql文件命令的两种方法,希 ...
- MySQL导入SQL文件过大或连接超时的解决办法/在navcat执行sql卡在0%
set global max_allowed_packet=100 000 000;set global net_buffer_length=100000;SET GLOBAL interactiv ...
- MySQL两大存储引擎:MyISAM和InnoDB
Mysql有两大常用的存储引擎MyISAM,InnoDB,默认的形式是前者. 两者基本的差别是对事务处理.外键和行级锁的主持上,InnoDB支持事务处理.外键等高级特性,而MyISAM不支持.MyIS ...
- 关于fmri数据分析的两大类,四种方法
关于fmri数据分析的两大类,四种方法: 数据驱动: tca:其实这种方法,主要是提取时间维的特征.如果用它来进行数据的分析,则必须要利用其他的数据方法,比如结合ICA. ica:作为pca的一般化实 ...
- mysql与sql server参照对比学习mysql
mysql与sql server参照对比学习mysql 关键词:mysql语法.mysql基础 转自桦仔系列:http://www.cnblogs.com/lyhabc/p/3691555.html ...
随机推荐
- poj 1837 天平问题(01背包变种)
题意:给你n个挂钩,m个砝码,要求砝码都用上,问有多少中方案数 题解:对于这道题目的状态,我们定义一个变量j为平衡度,当j=0的时候,表明天平平衡.定义dp[i][j]表达的含义为使用前n个砝码的时候 ...
- (六)Spring Boot之日志配置-logback和log4j2
一.简介 支持日志框架:Java Util Logging, Log4J2 and Logback,默认是使用logback 配置方式: 默认配置文件配置 引用外部配置文件配置 二.默认配置文件配置( ...
- Java框架 高并发系列 1第1天:必须知道的几个概念
https://mp.weixin.qq.com/s?__biz=MzA5MTkxMDQ4MQ==&mid=2648933019&idx=1&sn=3455877c451de9 ...
- Pandas进阶之提升运行效率
前言 如果你现在正在学习数据分析,或者正在从事数据分析行业,肯定会处理一些大数据集.pandas就是这些大数据集的一个很好的处理工具.那么pandas到底是什么呢?官方文档上说: " 快速, ...
- springboot启动流程(六)ioc容器刷新前prepareContext
所有文章 https://www.cnblogs.com/lay2017/p/11478237.html prepareContext方法核心逻辑 上一篇文章中,我们通过createApplicati ...
- nginx 反向代理的配置
nginx中的每个server就是一个反向代理配置,可以有多个server(nginx只能处理静态资源) nginx中 server的配置 server { listen 80; server_nam ...
- 2.TCP/IP的三次握手与四次挥手
参考文章:http://357742954.blog.51cto.com/368705/1317226 TCP(Transmission Control Protocol) 传输控制协议,是一个面向连 ...
- vue源码实现的整体流程解析
一.前言 最近一直在使用vue做项目,闲暇之余查阅了一些关于vue实现原理的资料,一方面对所了解到的知识做个总结,另外一方面希望能对看到此文章的同学有所帮助.本文如有不足之处,还请过往的大佬批评指正. ...
- 服务器IP与个人IP的特点
服务器IP:系统类型.开放的端口及运行的服务.C段同类机器数量.是否机房.IDC服务商 个人IP:系统类型.开放的端口及运行的服务……
- 从c到c++<三>
引用是给一个变量起别名回顾下变量,它有这两个属性:名称和空间.而引用不是变量,它仅仅只是变量的别名,没有自己的独立空间,需要与它所引用的变量共享空间,所以对于引用所做的改变实际上是对它所引用的变量的改 ...