add: MySQL 条件查询

This commit is contained in:
qianguyihao
2020-04-18 20:45:41 +08:00
parent 28ab4832bd
commit 67a0621db6
3 changed files with 199 additions and 71 deletions

View File

@@ -10,7 +10,6 @@ MySQL 下载地址https://dev.mysql.com/downloads/mysql/
![](https://github.com/qianguyihao/Web/blob/master/img/20200415_1708.png)
#### 步骤2、配置环境变量
打开 `~/.bash_profile` 文件,在文件的末尾,添加如下内容,即可配置环境变量:
@@ -31,12 +30,10 @@ alias mysqlstop='sudo /usr/local/mysql/support-files/mysql.server stop'
mysql -u root -p
```
参考链接:
- [MySQL安装Mac版](https://juejin.im/post/5cc2a52ce51d456e7079f27f)
### 步骤3、继续配置环境变量
`~/.bash_profile` 中配置好环境变量后,发现每次重启终端后,配置都会失效,需要重新执行 `source ~/.bash_profile` 命令。
@@ -49,7 +46,6 @@ mysql -u root -p
source ~/.bash_profile
```
参考链接:<https://blog.csdn.net/science_Lee/article/details/79214127>
## Navicat Premium 软件初体验
@@ -58,6 +54,7 @@ Navicat Premium 软件是一种数据库管理的GUI软件采用可视化的
安装好 Navicat Premium 软件之后,我们来看看这个软件是怎么用的。
### 新建表和数据
1、新建连接
@@ -84,74 +81,9 @@ Navicat Premium 软件是一种数据库管理的GUI软件采用可视化的
![](https://github.com/qianguyihao/Web/blob/master/img/20200416_1259.png)
### 导入外部 sql 文件
## MySQL 的一些简单命令
按照上面的操作,通过 Navicat Premium 软件建好数据库之后,我们也可以通过命令行来进行一些常见操作。
注意,在 Mac 终端执行 sql 命令时,命令的末尾必须加上`;`(英文格式的分号)。效果如下:
![](https://github.com/qianguyihao/Web/blob/master/img/20200417_1700.png)
在 Navicat中选中当前 database 之后右键选择“运行sql文件”即可导入外部sql文件。
我们也可以在 Navicat Premium 软件中,输入查询命令来查询数据。选择菜单栏「查询->新建查询->输入 sql 命令->运行」即可,效果如下:
![](https://github.com/qianguyihao/Web/blob/master/img/20200417_1750.png)
MySQL 命令行的一些简单命令如下。
**以 root 身份进入命令行**
```
mysql -u root -p
```
**查看有哪些数据库**
```sql
show databases
```
**选择进入指定的数据库**
```sql
use xxx_database
# 举例
use qiangu_database
```
**在当前数据库中,查询指定的表**:(查询全部数据)
```sql
select * from xxx_table
# 举例
select * from qiangu_student_table
```
**删除指定的表**
```sql
drop table xxx
# 举例
drop table qiangu_student_table
```
**删除指定的数据库**
```sql
drop database qiangu_database;
```
**创建一个数据库**
```sql
create database qiangu2_database;
```

View File

@@ -0,0 +1,196 @@
## MySQL 的一些简单命令
我们可以在 Navicat Premium 软件中,创建数据库和表,然后输入查询命令来查询数据。选择菜单栏「查询->新建查询->输入 sql 命令->运行」即可,效果如下:
![](https://github.com/qianguyihao/Web/blob/master/img/20200417_1750.png)
我们还可以直接在终端输入命令行来操作。
注意,在 Mac 终端执行 sql 命令时,命令的末尾必须加上`;`(英文格式的分号)。效果如下:
![](https://github.com/qianguyihao/Web/blob/master/img/20200417_1700.png)
MySQL 命令行的一些简单命令如下。
**以 root 身份进入命令行**
```
mysql -u root -p
```
**查看有哪些数据库**
```sql
show databases;
```
**选择进入指定的数据库**
```sql
use xxx_database;
#
use qianguyihao_database;
```
**在当前数据库中,查看有哪些表**
```sql
show tables;
```
**在当前数据库中,查询指定表的全部数据**
```sql
SELECT * FROM xxx_table;
#
SELECT * FROM qianguyihao_student_table
```
**删除指定的表**
```sql
drop table xxx;
#
drop table qianguyihao_student_table;
```
**删除指定的数据库**
```sql
drop database qianguyihao_student_table;
```
**创建一个数据库**
```sql
create database qianguyihao_database2;
```
## where 条件查询
使用 `where` 子句可以对表中的数据进行筛选结果为true的行会出现在查询结果中。
语法格式如下:
```sql
SELECT * FROM where ;
```
上面的语法格式中,`条件` 具体要怎么写呢?这个可能有很多种情况。我们继续往下看。
### 比较运算符
- `=` 等于
- `>` 大于
- `>=` 大于等于
- `<` 小于
- `<=` 小于等于
- `!=`:不等于
- `age > 20`:查询 age 大于 30 的数据
**举例**
```sql
# age 20
SELECT * FROM qianguyihao_table WHERE age > 20;
```
### 逻辑运算符
- AND
- OR
- NOT
**举例**
```sql
# age 2030
SELECT * FROM qianguyihao_table WHERE age BETWEEN 20 AND 30;
```
### 范围查询
- `in` 表示在一个非连续的范围内。
- `between ... and ...` 表示在一个连续的范围内
举例:
```sql
# name
SELECT * FROM qianguyihao_table WHERE name IN ['千古壹号', '许嵩'];
SELECT * FROM qianguyihao_table WHERE age BETWEEN 20 AND 30;
```
### 模糊查询
- `like`
- `%` 表示任意多个任意字符
- `_` 表示一个任意字符
`%` 符号举例:
```sql
#
select * from qianguyihao_table where `title` like "%前端%";
#
select * from qianguyihao_table where `title` like "%前端";
```
`_`符号举例:
```sql
#
SELECT * FROM qianguyihao_table WHERE `title` LIKE "千古___";
```
### NULL 的判断
- `is null` 判断为空
- `is not null` 判断为非空
注意,`is null` 和**空字符串**`""` 是有区别的。学过js基础之后你应该知道空字符串并非null只不过是里面的值为空而已空字符串也是会占有内存空间的。
举例:
```sql
select * from qianguyihao_table where name is not NULL;
```
### 优先级