auto commit

This commit is contained in:
CyC2018
2019-11-02 12:07:41 +08:00
parent 182e1440a4
commit bb6e0df82d
784 changed files with 7545 additions and 2827 deletions

View File

@ -130,7 +130,7 @@ DELETE FROM mytable
WHERE id = 1;
```
**TRUNCATE TABLE** 可以清空表也就是删除所有行
**TRUNCATE TABLE** 可以清空表也就是删除所有行
```sql
TRUNCATE TABLE mytable;
@ -177,8 +177,8 @@ LIMIT 2, 3;
# 排序
- **ASC** 升序默认
- **DESC** 降序
- **ASC** 升序默认
- **DESC** 降序
可以按多个列进行排序并且为每个列指定不同的排序方式
@ -213,21 +213,21 @@ WHERE col IS NULL;
应该注意到NULL 0空字符串都不同
**AND OR** 用于连接多个过滤条件优先处理 AND当一个过滤表达式涉及到多个 AND OR 可以使用 () 来决定优先级使得优先级关系更清晰
**AND OR** 用于连接多个过滤条件优先处理 AND当一个过滤表达式涉及到多个 AND OR 可以使用 () 来决定优先级使得优先级关系更清晰
**IN** 操作符用于匹配一组值其后也可以接一个 SELECT 子句从而匹配子查询得到的一组值
**IN** 操作符用于匹配一组值其后也可以接一个 SELECT 子句从而匹配子查询得到的一组值
**NOT** 操作符用于否定一个条件
**NOT** 操作符用于否定一个条件
# 通配符
通配符也是用在过滤语句中但它只能用于文本字段
- **%** 匹配 >=0 个任意字符
- **%** 匹配 >=0 个任意字符
- **\_** 匹配 ==1 个任意字符
- **\_** 匹配 ==1 个任意字符
- **[ ]** 可以匹配集合内的字符例如 [ab] 将匹配字符 a 或者 b用脱字符 ^ 可以对其进行否定也就是不匹配集合内的字符
- **[ ]** 可以匹配集合内的字符例如 [ab] 将匹配字符 a 或者 b用脱字符 ^ 可以对其进行否定也就是不匹配集合内的字符
使用 Like 来进行通配符匹配
@ -243,14 +243,14 @@ WHERE col LIKE '[^AB]%'; -- 不以 A 和 B 开头的任意文本
在数据库服务器上完成数据的转换和格式化的工作往往比客户端上快得多并且转换和格式化后的数据量更少的话可以减少网络通信量
计算字段通常需要使用 **AS** 来取别名否则输出的时候字段名为计算表达式
计算字段通常需要使用 **AS** 来取别名否则输出的时候字段名为计算表达式
```sql
SELECT col1 * col2 AS alias
FROM mytable;
```
**CONCAT()** 用于连接两个字段许多数据库会使用空格把一个值填充为列宽因此连接的结果会出现一些不必要的空格使用 **TRIM()** 可以去除首尾空格
**CONCAT()** 用于连接两个字段许多数据库会使用空格把一个值填充为列宽因此连接的结果会出现一些不必要的空格使用 **TRIM()** 可以去除首尾空格
```sql
SELECT CONCAT(TRIM(col1), '(', TRIM(col2), ')') AS concat_col
@ -293,7 +293,7 @@ FROM mytable;
| LENGTH() | 长度 |
| SOUNDEX() | 转换为语音值 |
其中 **SOUNDEX()** 可以将一个字符串转换为描述其语音表示的字母数字模式
其中 **SOUNDEX()** 可以将一个字符串转换为描述其语音表示的字母数字模式
```sql
SELECT *
@ -517,7 +517,7 @@ orders 表:
# 十六组合查询
使用 **UNION** 来组合两个查询如果第一个查询返回 M 第二个查询返回 N 那么组合查询的结果一般为 M+N
使用 **UNION** 来组合两个查询如果第一个查询返回 M 第二个查询返回 N 那么组合查询的结果一般为 M+N
每个查询必须包含相同的列表达式和聚集函数
@ -710,7 +710,7 @@ USE mysql;
SELECT user FROM user;
```
**创建账户**
**创建账户**
新创建的账户没有任何权限
@ -718,25 +718,25 @@ SELECT user FROM user;
CREATE USER myuser IDENTIFIED BY 'mypassword';
```
**修改账户名**
**修改账户名**
```sql
RENAME USER myuser TO newuser;
```
**删除账户**
**删除账户**
```sql
DROP USER myuser;
```
**查看权限**
**查看权限**
```sql
SHOW GRANTS FOR myuser;
```
**授予权限**
**授予权限**
账户用 username@host 的形式定义username@% 使用的是默认主机名
@ -744,7 +744,7 @@ SHOW GRANTS FOR myuser;
GRANT SELECT, INSERT ON mydatabase.* TO myuser;
```
**删除权限**
**删除权限**
GRANT REVOKE 可在几个层次上控制访问权限
@ -758,7 +758,7 @@ GRANT 和 REVOKE 可在几个层次上控制访问权限:
REVOKE SELECT, INSERT ON mydatabase.* FROM myuser;
```
**更改密码**
**更改密码**
必须使用 Password() 函数进行加密