本文首發於公眾號:Hunter後端
原文鏈接:MySQL筆記六之SELECT數據查看之大於小於
SELECT 是查看數據的語法,將分為以下幾個方面介紹。
- SELECT 查看所有數據
- 大於小於條件彙總
- 默認不區分大小寫
- BETWEEN 的使用
- NULL 的過濾
1、SELECT 查看所有數據
如果是想查看 book 表所有行的所有字段的數據,我們可以使用下面的語法:
select * from book;
SELECT 是查看插入數據的語句,* 表示所有字段,即查看所有字段的數據。
在上一篇筆記中我們向 book 表中插入了數據,可以看到返回的數據。
對於上面這個操作有兩點需要注意:
一個是返回條數的限制,在數據量小的情況下,可以不用限制條數,但是如果數據量大且不需要查看這麼多數據,可以通過 limit 來限制返回調試,或者其他的條件限制來減少數據量的返回
另一個是關於 * 這個符號,一般在知道自己需要什麼字段的情況下可以直接 SELECT 相應的字段
因為獲取不相關的數據畢竟會有額外的時間和內存的消耗用來返回數據,另一個原因是,通過指定字段我們可以按照順序獲取相應的字段數據
2、大於小於條件彙總
我們可以通過 WHERE 語句來進行條件過濾。
比如我們需要 id 值大於 2 的數據,那麼就可以使用 WHERE 來操作:
SELECT book_name, author FROM book WHERE id > 2;
可以看到,MySQL中的大於小於的過濾條件和其它語言的使用方法差不多,如下是對照表,摘自《MySQL必知必會》:
| 操作符 | 説明 |
|---|---|
| = | 等於 |
| != | 不等於 |
| > | 大於 |
| >= | 大於等於 |
| < | 小於 |
| <= | 小於等於 |
| BETWEEN | 在指定的值之間(閉區間) |
| <> | 不等於 |
在以上表格中可以看到有一個值是 <> ,這個也是不等於的意思,和 != 是同樣的用法,但一般推薦使用 !=。
3、默認不區分大小寫
我們可以往 book 表裏插入一條數據:
insert into book (book_name, author) values('HTML', 'HTML_author');
接下來查詢:
select * from book where book_name = 'html';
是可以查詢到我們插入的大寫的數據的,所以這個查詢默認是不區分大小寫的。
如果一定要區分大小的話,那就是如下的操作:
select * from book where binary book_name = 'html';
在字段前面加一個 binary,就可以強制查詢的時候區分大小寫了。
4、BETWEEN AND 的使用
如果我們要搜索 id 值在 2 到 9 之間的數據,就可以使用 BETWEEN AND 的語句:
select * from book where id between 2 and 9;
如果數據庫中的數據是連續的話,可以看到返回的數據 id 值從2 一直到9 且包含了2和9,也就是説這是一個閉區間的取值。
5、NULL 的過濾
前面我們不指定字段插入數據測試字段默認值的時候,有 author 字段值為 null 的數據,如果是想要搜索 null,如下操作:
select * from book where author is null;
如果是值不為 null,則是:
select * from book where author is not null;
如果想獲取更多相關文章,可掃碼關注閲讀: