Udemy
The Ultimate MySQL Bootcamp:
Go from SQL Beginner to Expert
本期分享大部分例子来源于该课程,总结为本人原创
撰文/Iris帆

最近在找数据分析相关的工作,发现很多职位不仅对Pyhton等编程工具有要求,也对SQL数据库要求颇高,本来自己有一点基础,所以产生了系统性学习的念头。这周到现在为止,我学了5天的时间,发现自己跟SQL缘分不浅,为什么这么说呢?我想,可能是SQL非常符合我的思维模式和性格。
Python或者其它编程注重于繁琐的细节和非常抽象的数理知识,一旦有不懂的地方,就容易按耐不住地认为“自己很蠢”,从而产生放弃的念头。而SQL对我来说,几乎每一刻的学习都能带给我惊喜和动力。不仅如此,还间接激励我学好Python的决心,如此说来势必要有一个总结SQL的学习模块。
对于SQL工具的选取,我毫不犹豫地选择了MySQL,没什么特别原因,我的理解是市面上的SQL工具在语法上大同小异,因此掌握了一种,学习其它工具,也均不在话下。
通过近期5天的学习和之前的知识积累,我开始记录下自己的学习总结,如果有些小伙伴有兴趣学习数据库,又碰巧阅读了我的分享,欢迎随时探讨。
需重点掌握的英文词汇:
database(s):数据库,简称DB
table(s):表格
select:选择
create:创建
insert into:注入、写入(数据)
本期分享重点:
我对数据库、SQL和MySQL的理解
创建数据库和表格,向表格录入数据
我们处于信息网络指数发展的时代,致使各行各业涌入大量的数据,而这些积累在网络上的数据都有哪些?又都有什么用处呢?
有些数据储存在本地硬盘,有的信息储存在云端,可以说只要我们在使用电子产品,不可避免地就会和数据打交道:微信消息,编程代码,都是数据。提到储存信息的用处,除了提高商业分析利用,可能就是科学研究了。
而其中,商业用来跟踪人们的生活,举个简单的例子,你网购,首页陈列的推荐产品就是根据你经常购买的商品,再通过网络数据分析得出的。这对于商业公司有什么好处呢?大概就是“知你心意,促你消费”。
科学研究上,用过去积累的数据,分析其变化的模式,得出一个科学结果,或者做出一个科学的预测。比如说全球变暖的研究,通过对历年温室气体排放量变化的研究,使用数据构建其变化的模型,就可以预测未来排放趋势,从而对未来大气污染状况有个准备。
无论是商业上还是科学上对数据的运用,都未囊括对数据的所有使用,只是从宏观的角度看,这是运用最广泛的。对我们每个个体而言,我想大家可以各自定义其用处。
谈了数据,就必须与数据库联系起来,顾名思义,是「汇总数据的地方」,就像图书和图书馆的关系一样。SQL的全称是Structured Query Language,中文翻译为「结构化查询语言」,MySQL的中文定义为「开放源码的关系数据库管理系统」,也就是“使用”数据库的工具。
那么SQL和MySQL的关系是什么呢?使用MySQL进行一系列语法操作,用到的语言就是SQL语言,就像使用Python要用到Python专属的语言一样。如此看来,不同软件,使用的语言不同,虽然在语法上有许多相似之处,就像英语和德语的区别一样,都用到字母,但写法有偏颇。
综合来看,数据库是汇总在一起的数据,可以存放在本地硬盘或者云盘上。如果要“使用”数据库里的数据,就需要用到类似于MySQL这样的软件,用MySQL需要使用SQL语言。而如果要对从MySQL上提取出的样本数据进行研究分析,就必须用到Python这类研究型软件。
一起来了解一下MySQL里的基本语法操作。
表格存放于数据库中,数据存放于表格里,运用语法
show databases;
我们可以获取目前所有的数据库列表。
如果我们想要看看一个特定表格,比如表格tablename,里面有什么内容,首先我们需要选择数据库,用到的语法是
USE database_name;
USE后面是指数据库名字。
接着我们可以先看看所选数据里都有哪些表格,用到
SHOW TABLES;
如果还想看看tablename这个表格的参数内容,可用语法
DESC tablename;
(DESC在这里是describe描述的意思,后面学习中会遇到相同的DESC,但表达的是descending下降之意)
或者用
SHOW COLUMNS FROM tablename;
最后,用
SELECT*FROM tablename;
来获取表格内的所有信息。
以上就是简单地提取一个「已存在表格」所用到的语法,那么,我们如何创建一个新表格,并将数据注入进去呢?
举个简单的例子,首先创建表格tablename:
CREATE TABLE tablename(column_name1 data_type,column_name2 data_type);
接着我们向表格注入两组数据:
INSERT INTO tablename(column_name1, column_name2)VALUES (value, value),(value, value);
以上例子均为框架式地表达,如果要用更具体的例子的来解释,比如一个宠物猫店建立了一个数据库,其中的一个表格命名为cats,cats里包含了猫猫姓名和年龄两列信息。
CREATE TABLE cats(name VARCHAR(100),age INT);INSERT INTO cats(name, age) VALUES ('Jack', 7);
小提醒:上面例子中的VARCHAR和INT为数据类型,现在我们只需要前者为字符串,后者为整数即可,后面会单独争对数据类型进行讲解。
还想要补充一点是:创建表格用到语法
CREATE TABLE tablename;
同理,创建数据库用到
CREATE DATABASE database_name;
有时也可能你想要完全抹掉一个表格或者一个数据库,这里用到的语法是
DROP TABLE tablename;
或者,
DROPDATABASE databasename;
(抹掉请慎行)。
偶然由于操作或者语法不当,导致系统输出WARNINGS,这时可以立即用
SHOW WARNINGS;
查看详细信息。
以上的介绍算是MySQL的入门内容,回顾一下,我主要介绍了数据、数据库、SQL和MySQL之间的联系,接着简单介绍了查询和创建表格、数据库用到语法,以及向表格注入数据的语法。
今天的分享就到这里,下期见,感谢学习路上的你我TA。





