从零开始的MySQL数据查询(课程学习版)

写在开头

MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之一。

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL作为网站数据库。-----------------------------------------------------------------------------------------------------------摘选至百度百科-----------------------------------------------

而作为数据库的主要功能之一的数据库查询,对我们学习使用数据库有着非常重要的意义,嗯~十分有九的重要性。

数据库的查询主要分为两类

一、单表查询。

二、多表查询。

单表查询主要是对一个数据库中存储的一个二维表进行内容的查询。类似与对一个excel表格进行处理,数据再多也局限于一个表内。

多表查询主要是对数据库中存在的多个表进行联合查询。
而在实际工作中对庞大数据量分为了多个表,再对这些表进行细致查询无疑是非常难的事情,所以多表查询又是学习数据库数据查询的重点以及难点。

懂得了以上知识,相信你对数据查询应该有了一定的基本认识,现在我们开始正式的学习吧。

一、单表查询

在数据库中我们的操作语句主要是select语句,这是贯穿我们数据查询的一个最重要的语句。
我们对数据库的全部查询都依靠这个语句。
打开数据库,进入”mysql“数据中(这个数据库是MySQL中自带的系统数据库,为避免数据损坏带来的使用问题,请不要对这个数据库进行除查询外的其他操作)在数据库命令行中输入:
select * from user;
这个语句是查询mysql库中的user表,相信英语好的同学发现了,这句话翻译成中文的原意是:挑选user中的  *  。因为在数据库中” * “是通配符,可以简单的理解为:所有的。所以那句话又可以翻译为:挑选user的所有。可以这样理解,即:挑选某个表中的全部信息。
要注意的是要具体对某个表进行查询处理,首先要进入这个表所属的数据库。
当然,这个简单的查询语句中的*符号也可以换成二维表中的列的列名。

以上就是简单的单表查询了

二、多表查询

在多表查询中进行查询时,需要将多个表进行连接,所以又将连接方式具体分为:

一、全连接。

二、内连接。

三、外连接。

一、全连接:


表1

T1
1
2

      表2
 

B1B2
ab
AB

上图为表1和表2,我们进行全连接时,会得到一个不同的表(为了方便展示所以有新表的产生,在实际mysql中进行查询时不会有新表的产生)。将表1与表2进行全连接,会得到新的数据,即下图的表3。

表3
 

T1B1B2
1ab
2ab
1AB
2AB

观察上面三个图,我们可以得出以下结论:
全连接是指将每个表的每行都与其他表的每行交叉,以产生所有的组合。

二、内连接。

内连接又称等值连接,顾名思义就是通过特定的列进行连接,只要两个表中特定的行满足条件(即相等)才能进行连接。

内连接是数据查询经常用到的连接,但是也是最容易出错的连接。

三、外连接。

在我个人理解中,我将外连接又称为不平等连接。为何?因为外连接是以某个表要求另一个表,相当于。用一个表中的条件来筛选另一个表,第一个表中的数据全出现,而第二个表只有满足条件的数据才进行连接。

了解了数据库中基本的查询原理,我们可以使用join关键字进行实操了

join连接

join连接只能进行内连接以及外连接。不要问为什么没有全连接,因为用不到。
以下是join语句的格式:

select 表一.列名,表二.列名..... from 表一 join 表二 on 表一.列名=表二.列名;

语句中的标点符号均为英文符号,注意这个。以及on后的两表的列名是相等的。看到相等
两个字聪明的同学应该知道这个是内连接了,恭喜你答对了。那外连接呢?
只要在join关键字前加上left或者right就可以了,  left join 左外连接    right join 右外连接
我们知道外连接是不平等连接,那左右连接的意思是什么呢。就是以哪个表为主的意思。

IN连接

in是什么意思呢?当然是在...中啦,在什么数据中查询什么数据,就是in连接的灵魂。主要的功能是在我们查询好的数据中再进行查询,即二次查询。

结尾

以上就是本博客的内容了,当然往后还有exists查询。但为了控制本文篇幅,请各位读者在网上进行查找,我们也可以将查询到的各个网站整理成表格,用以我们的实操。

读书百遍其义自现,掌握了理论知识还不够,数据库的学习更重要的是上手的实操。

所以为了更好的学习,我们要养成边看教程边打代码的习惯,当然,最主要的是思考以及尝试。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值