学习mysql

main
expressgy 6 months ago
parent cd26f7528a
commit 160aec9cf1
  1. 64
      docs/MySQL/mysql是怎样使用的.md

@ -432,11 +432,11 @@ FROM
student_info; student_info;
``` ```
### 7.4 查询所有列 ## 7.4 查询所有列
- 方法:`SELECT * FROM student_info;` - 方法:`SELECT * FROM student_info;`
### 7.5 查询结果去重 ## 7.5 查询结果去重
- 方法:`SELECT DISTINCT department[, 列名] FROM student_info` - 方法:`SELECT DISTINCT department[, 列名] FROM student_info`
@ -445,18 +445,72 @@ SELECT DISTINCT department FROM student_info;
SELECT DISTINCT department, major FROM student_info; SELECT DISTINCT department, major FROM student_info;
``` ```
### 7.6 限制结果集合记录条数(分页) ## 7.6 限制结果集合记录条数(分页)
- 方法:`SELECT * FROM table_name LIMIT [起始下标, ]搜寻条数` - 方法:`SELECT * FROM table_name LIMIT [起始下标, ]搜寻条数`
注意:
- LIMIT一般放在最后
```sql ```sql
# 查询前两条 -- 查询前两条
SELECT * FROM student_info LIMIT 2; SELECT * FROM student_info LIMIT 2;
# 查询两条,从5+1开始 -- 查询两条,从5+1开始
SELECT * FROM student_info LIMIT 5, 2; SELECT * FROM student_info LIMIT 5, 2;
``` ```
## 7.7 对查询结果排序
### 7.7.1 单列查询
- 方法:`ORDER BY 列名 [ASC|DESC]`
ASC为默认升序,DESC为倒序
```sql
SELECT student_info.number FROM student_info ORDER BY student_info.number ASC;
SELECT * FROM student_info ORDER BY student_info.number ASC;
SELECT * FROM student_info ORDER BY student_info.number DESC;
```
### 7.7.2 多列查询
- 方法:`ORDER BY 列1 [ASC|DESC], 列2 [ASC|DESC],...`
# 第八章 带搜索条件的查询
## 8.1 简单搜索条件
| 运算符 | 示例 | 描述 |
|-------|-------------|--------------|
|=| a = b | |
|<=>| a <=> b | 相等,NULL值安全相等 |
|<>或!=| a<>b 或 a!=b | 不等 |
|<| | 小于 |
|<=| | 小于等于 |
|>| | 大于 |
|>=| | 大于等于 |
|BETWEEN| a BETWEEN b AND C| a 属于[b, c]|
|NOT BETWEEN|a NOT BETWEEN b AND C| a 不属于[b, c]|
```sql
-- 查id等于20210101的学生的所有成绩
SELECT * FROM student_score WHERE number = 20210101;
-- 查看除了这个学生的其他的学生的成绩
SELECT * FROM student_score WHERE number != 20210101;
SELECT * FROM student_score WHERE number <> 20210101;
-- 查成绩及格
SELECT * FROM student_score WHERE score >= 60;
-- 查成绩不及格
SELECT * FROM student_score WHERE score < 60;
-- 查成绩在60到80之间的成绩
SELECT * FROM student_score WHERE score BETWEEN 60 AND 80;
-- 查成绩不在60到80之间的成绩
SELECT * FROM student_score WHERE score NOT BETWEEN 60 AND 80;
```
## 8.2 匹配列表中的元素 IN

Loading…
Cancel
Save