数据库知识

 

1. 操作库

创建库

CREATE DATABASE [IF NOT EXISTS] 数据库名 [参数参数] [ 参数]...];

参数:

CHARACTER SET 码表名

COLLATE 校对规则名详见文档10.10.1

显示库

SHOW DATABASES;

显示数据库创建语句

SHOW CREATE DATABASE 数据库名;

修改库

ALTER DATABASE 数据库名参数参数][ 参数]...];

注意不能改数据库的名字

删除库

DROP DATABASE [IF EXISTS] 数据库名;

操作表

操作表之前使用需要先确定使用哪个数据库

USE 数据库名

创建表

CREATE TABLE 表名(列名 类型[,列名 类型][,列名 类型]...);

查看所有表

SHOW TABLES;

查看表的创建语句

SHOW CREATE TABLE 表名;

显示表结构

DESC 表名;

修改表名

RENAME TABLE 原表名 TO 新表名;

修改字符集

ALTER TABLE 表名 CHARACTER SET 字符集名;

删除表

DROP TABLE 表名;

2. 操作列

追加列

ALTER TABLE 表名 ADD 列名 类型[,列名 类型][,列名 类型]...;

修改列类型

ALTER TABLE 表名 MODIFY 列名 类型[,列名 类型][,列名 类型]...;

修改列

ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 类型;

删除列

ALTER TABLE 表名 DROP 列名;

2.1. 插入

语法:

INSERT INTO 表名[(列名[,列名]...)] VALUES([,]...);

2.2. 修改

语法

UPDATE 表名 SET 列名=[,列名=]...[WHERE 条件语句];

注意事项

WHERE子句选择满足条件的行进行更新如果不写则更新所有行

2.3. 删除

语法

DELETE FROM 表名 [where 条件语句]

注意事项

如果不加where子句将删除表中所有记录

delete只能用作删除行不能删除某一列的值需要用update

deleteupdate的时候需要注意表与表之间的关联关系

删除表中所有数据可以使用: TRANCATE 表名这种方式会删除旧表重新创建在数据较多的时候使用

3. 操作数据(查询)

3.1. DISTINCT 

语法

SELECT [DISTINCT] 列名[, 列名]... FROM 表名

注意事项

*可以替代列名表示所有列但是通常我们为了提高代码的可读性不使用*

DISTINCT为过滤重复记录

如果DISTINCT后面跟多列是过滤掉多列合并之后的重复

3.2. 列名表达式

语法

SELECT 列名|表达式[,列名|表达式]... FROM 表名

注意事项

表达式只是显示时起作用不会改变数据库中的值

3.3. AS 

SELECT 列名 AS 别名 FROM 表名

注意事项

起别名时AS可以省略

不会改变数据库中的值

3.4. WHERE

语法

SELECT 列名 FROM 表名 [WHERE 条件语句]

3.5. ORDER BY 

语法

SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;

注意事项

ORDER BY 指定排序的列名可以是表中的列名也可以是SELECT语句后面起的别名

ASC为升序, DESC为降序

ORDER BY应在查询语句的结尾

3.6. COUNT函数

语法

SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 条件语句]

注意事项

COUNT(列名)的方式是统计指定列中有多少条记录不包括值为NULL

COUNT(*)则是统计表中有多少条数据

COUNT(DISTINCT 列名统计不重复的记录数

如果加上WHERE子句则是统计满足条件的记录

3.7. SUM函数

语法

SELECT SUM(列名) FROM 表名 [WHERE 条件语句];

注意事项

计算指定列中所有记录的和如果有WHERE子句则计算满足条件的记录

3.8. AVG函数

语法

SELECT AVG(列名) FROM 表名 [WHERE 条件语句];

注意事项

计算指定列的平均值如果有WHERE子句则计算满足条件的记录

AVG()统计平均数不包含NULL

3.9. MAX / MIN函数

语法

SELECT MAX(列名) FROM 表名 [WHERE 条件语句];

SELECT MIN(列名) FROM 表名 [WHERE 条件语句];

注意事项

获取指定列最高/最低值, NULL不参与统计

3.10. GROUP BY(重点)

语法

SELECT 列名 FROM 表名 GROUP BY 列名 [HAVING 条件语句]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值