MySQL 基操教程(五) SELECT 数据查看之大于、小于

前面介绍了使用 insert 对数据表进行数据的插入,在插入数据以后,我们简单使用 SELEECT 进行过查看插入的数据。

SELECT * FROM book;

SELECT 是查看插入数据的语句,* 表示所有字段,即查看所有字段的数据。

现在我们使用上一节中使用的 INSERT 字段插入如下数据,查看得到如下结果:
在这里插入图片描述
但是 * 这个字符我们一般不常使用,需要查看什么字段内容,就 SELECT 什么内容,比如我们查看 book_name, author,就可以使用以下语句:

SELECT book_name, author FROM book;

一个是消耗有点大,意思是要选择数据库中所有的字段,在返回的数据量比较大的时候会比较耗时。
二个在我看来,因为在 Python 中常常使用到 SELECT 到的数据,可能前一阵子按照字段顺序写好了程序,后来数据库中字段顺序一改变,连程序都得修改。

所以在获取数据的时候最好是指明挑选的哪些字段。

数据过滤 WHERE

数据有挑选就有条件过滤, 以上述数据为例,如果我们需要 id 值大于 2 的数据,那么就可以使用 WHERE 来过滤挑选。

SELECT book_name, author FROM book WHERE id > 2;

没错, MySQL中的大于小于的过滤条件和其它语言的使用方法差不多,如下是对照表,摘自《MySQL必知必会》:

操作符说明
=等于
!=不等于
>大于
>=大于等于
<小于
<=小于等于
BETWEEN在指定的值之间
<>不等于

在以上表格中可以看到有一个值是 <> ,这个也是不等于的意思,和 != 是同样的用法,但一般推荐使用 !=。

注意1:默认不区分大小写

MySQL在执行匹配时默认不区分大小写,还是我们开始那张表,可以看到最后一条数据的 HTML 大写的,现在我们执行以下语句:

SELECT book_name, author FROM book WHERE book_name = 'html';

可以得到如下结果:
在这里插入图片描述
虽然我们搜索的条件是小写的,但是返回的结果是大写的,默认不区分大小写就是这个意思。

注意2:BETWEEN 的使用

BETWEEN 这个关键字的用法,如果我们要搜索 id 值在 2 到 4 之间的数据,就可以使用如下语句:

SELECT id, book_name, author FROM book WHERE id BETWEEN 2 AND 4;

在这里插入图片描述其中,数值之间用 AND 连接,而且我们可以看到 使用 BETWEEN 是包含了两个边界值的,那么这条语句也就等同如下:

SELECT id, book_name, author FROM book WHERE id >= 2 AND id <= 4;

在这里插入图片描述可以看到结果是一样的。

那么如果我们想要的开区间呢,也就是 大于 2 并且 小于 4,
很简单, BETWEEN 不能用了,别懒,用两个操作符号连接把:

SELECT id, book_name, author FROM book WHERE id > 2 AND id < 4;

注意3:NULL值的选择

现在我们向表中插入一条数据:

INSERT INTO book (book_name) values('CSS');

没有向其中插入 author 的值,查看数据 :
在这里插入图片描述现在,我们要查看表中所有 author 为 NULL 的值呢,可以使用如下语句:

SELECT * FROM book WHERE author IS NULL;

在这里插入图片描述就可以得到结果,如果是挑选数值不是 NULL 的数据呢,前面加个 NOT,这个我们后一节会提到的。

SELECT * FROM book WHERE author IS NOT NULL;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值