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 ...
随机推荐
- IntelliJ IDEA 最新版 2019.2.4 激活 (持续更新)(含windows和Mac)
IntelliJ IDEA 最新版 2019.2.4 激活 最新版激活包下载地址: 百度网盘 提取码: i28c 转载: Neo Peng Jetbrains系列产品 激活方式 同下述方式相同,只需要 ...
- C#通过地址获取省市区(基于百度地图API)
最近公司有个需求,想通过地址获取对应的省市区,本来想直接通过对地址的截取,对于完整的地址还可以,不完整的就没法用了 所以本篇通过百度地图API来获取地址 第一步:申请ak密钥 登录百度地图开放平台,按 ...
- Python多个装饰器的顺序 转载
3.使用两个装饰器当一个装饰器不够用的话,我们就可以用两个装饰器,当然理解起来也就更复杂了,当使用两个装饰器的话,首先将函数与内层装饰器结合然后在与外层装饰器相结合,要理解@语法的时候到底执行了什么, ...
- Array + two points leetcode.16 - 3Sum Closest
题面 Given an array nums of n integers and an integer target, find three integers in nums such that th ...
- 从linux和ucos的比较中来看进程这个概念
这种问题就要和ucos结合起来嘛. 程序和进程: 程序:存放在磁盘上的一些列代码和数据的可执行映像,是一个静止的实体. 进程:是一个执行中的程序,它是动态的实体. linux进程的四要素: 1. 有一 ...
- BP神经网络—java实现
神经网络的结构 神经网络的网络结构由输入层,隐含层,输出层组成.隐含层的个数+输出层的个数=神经网络的层数,也就是说神经网络的层数不包括输入层.下面是一个三层的神经网络,包含了两层隐含层,一个输出层. ...
- 《浏览器工作原理与实践》 <12>栈空间和堆空间:数据是如何存储的?
对于前端开发者来说,JavaScript 的内存机制是一个不被经常提及的概念 ,因此很容易被忽视.特别是一些非计算机专业的同学,对内存机制可能没有非常清晰的认识,甚至有些同学根本就不知道 JavaSc ...
- python-----多进程笔记
多进程笔记: 在Python中多进程的创建方式对比: 1.在Python中,可以通过os.fork()创建子进程,但是这种方式智能在'linux'和'unix'以及'mac'下面使用,不能跨平台,所以 ...
- [Python] Codecombat 攻略 Sarven 沙漠 (1-43关)截止至36关
首页:https://cn.codecombat.com/play语言:Python 第二界面:Sarven沙漠(43关)时间:4-11小时内容:算术运算,计数器,while循环,break(跳出循环 ...
- spring实例化三:CglibSubclassingInstantiationStrategy
在SimpleInstantiationStrategy类中,留下了包含MethodOverride对象的bd对象定义未做实现,做了抽象.CglibSubclassingInstanti ...