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 ...
随机推荐
- 13-MySQL DBA笔记-迁移、升级、备份、恢复数据库
第13章 迁移.升级.备份.恢复数据库本章将为读者讲述数据库的各种维护任务:迁移.升级.备份和恢复.因为每个人熟悉的工具不同,其对应的迁移.升级.备份和恢复的方式也都略有不同,本书将尽量对笔者认为最具 ...
- JS OOP -03 JS类的实现
JS类的实现: a.理解类的实现机制 b.使用prototype对象定义类成员 c.一种JS类的设计模式 a.理解类的实现机制 在JS中可以使用function关键字来定义一个类. 添加类的成员,在函 ...
- sqlyog 如何导出建表语句
真傻了,这个问题弄了半天. 解决 点击表名后,在右侧的信息栏里面有啊: PS - 个人博客链接:sqlyog 如何导出建表语句
- Java 10 的 10 个新特性,你颤抖了吗?
Java 9才发布几个月,很多玩意都没整明白,现在Java 10又快要来了.. 这时候我真尼玛想说:线上用的JDK 7 甚至JDK 6,JDK 8 还没用熟,JDK 9 才发布不久不知道啥玩意,JDK ...
- 为什么JAVA线程中没有Running状态?
面试官问:为什么 Java 线程没有 Running 状态?我懵了 —— 转 芋道源码 什么是 RUNNABLE? 与传统的ready状态的区别 与传统的running状态的区别 当I/O阻塞时 如 ...
- sklearn特征工程
目录 一. 特征工程是什么? 2 ①特征使用方案 3 ②特征获取方案 4 ③特征处理 4 1. 特征清洗 4 2. 数据预处理 4 3. 特 ...
- MySQL数据库用户和权限管理
一.视图 视图:VIEW,虚表,保存有实表的查询结果,在视图插入的内容都会存入表中.创建方法: CREATE VIEW view_name [(column_list)] AS select_st ...
- 持续集成工具FinalBuilder使用心得
FinalBuilder 使用这款自动化创建和发布管理工具,软件开发者可以定义和维护一个可靠的以及可重复创建的程序.FinalBuilder包括集成的带有版本的控制系统,文件和目录选项,重复器,源代码 ...
- 复杂sql书写方法
给你一个复杂sql连接不同的表,多个嵌套查询条件等的语句时,你是非常的胆怯由于对语法的不熟悉以及没有经验和自信,现在我们来学习一下如何写复杂的sql,我们把它分解为很多小的步骤进行 一.集中最后的输出 ...
- springbatch
springbatch job的创建使用 job:作业,是批处理中的核心概念,是batch操作的基础单元,每个job由多个step组成 step:步骤,任务完成的节点 每个job是由JobBuildF ...