去重複查詢
創建一個表,用於測試
mysql> use test;
mysql> create table test(id int,name varchar(10),age tinyint);
mysql> insert into test values (1,'張三',23);
mysql> insert into test values (2,'張三',23);
mysql> select * from test;
+------+--------+------+
| id | name | age |
+------+--------+------+
| 1 | 張三 | 23 |
| 2 | 張三 | 23 |
+------+--------+------+
2 rows in set (0.00 sec)
除id外,其他數據都是一樣的記錄,接下來,通過去重複查詢。
語法:select distinct 字段 from 表名
mysql> select distinct name,age from test;
+--------+------+
| name | age |
+--------+------+
| 張三 | 23 |
+--------+------+
將指定字段去重,原本兩條記錄,就剩下一個了。
多條件查詢
使用and和or可進行多條件查詢,and用於同時滿足多個條件,or則滿足多個條件中的一個即可。
多添加一條記錄,用於測試。
mysql> insert into test values(3,'李四',24);
mysql> insert into test values(4,'王五',25);
使用時很簡單,直接在條件後面加上即可。例如:查詢字段id<2,並且name是張三的記錄。
mysql> select * from test where id<2 and name='張三';
+------+--------+------+
| id | name | age |
+------+--------+------+
| 1 | 張三 | 23 |
+------+--------+------+
查詢id>3或name時王五的記錄
mysql> select * from test where id >3 or name='王五';
+------+--------+------+
| id | name | age |
+------+--------+------+
| 4 | 王五 | 25 |
+------+--------+------+
1 row in set (0.00 sec)
區分大小寫查詢
我們都知道,mysql默認是不區分大小寫的,而有些時候,出於需要還是要區分大小寫,這個時候就要用到這個了。
語法:select 字段 from 表名 where binary 條件
創建一對記錄,用於測試
mysql> insert into test values(5,'one',22);
mysql> insert into test values(6,'ONE',22);
查詢一下創建的記錄
mysql> select * from test where name='one';
+------+------+------+
| id | name | age |
+------+------+------+
| 5 | one | 22 |
| 6 | ONE | 22 |
+------+------+------+
接下來將one和ONE通過binary分別查詢。
查詢name爲one的記錄
mysql> select * from test where binary name='one';
+------+------+------+
| id | name | age |
+------+------+------+
| 5 | one | 22 |
+------+------+------+
查詢name爲ONE的記錄
mysql> select * from test where binary name='ONE';
+------+------+------+
| id | name | age |
+------+------+------+
| 6 | ONE | 22 |
+------+------+------+
查詢排序
通過記錄的序號來對數據進行排列查詢,通過序號的只越大,創建的時間越短。
語法:select 字段 from 表名 order by 字段名 順序
順序:asc表示升序,desc表示降序
使用升序排列(從小到大)
mysql> select id from test order by id asc;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
+------+
使用降序排列(從大到小)
mysql> select id from test order by id desc;
+------+
| id |
+------+
| 6 |
| 5 |
| 4 |
| 3 |
| 2 |
| 1 |
+------+