2021-04-21:Mysql 第二天

MySQL:

1.DML:增删改表中的数据

1.添加数据

  语法:insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);

注意:

(1)列名和值要一一对应,

(2)如果表名后,不定义列名,则默认给所有列添加值

(3)除了数字类型,其他类型需要使用引号(单双都可以)引起来

 

2.删除数据

语法:delete from 表名 [where 条件]

TRUNCATE TABLE stu; -- 删除表,然后再创建一个一模一样的空表

注意:如果不加条件,将删除表中所有记录

如果要删除所有记录:

delete from 表名; -- 不推荐使用。有多少条记录就会执行多少次删除操作

truncate table 表名; -- 先删除表,然后再创建一张一样的表 -- 推荐使用,效率更高

2021-04-21:Mysql 第二天_第1张图片

3.修改数据

语法:update 表名 set 列名1 = 值1,列名2 = 值2, ... [where 条件];

注意:

1. 如果不加条件,则会把表中所有信息都修改掉

 

 

2.DQL:查询语句

语法:

select 字段列表 

from 表名列表 

where 条件列表

group by 分组字段

having 分组之后的条件

order by 排序

limit 分页限定

 

基础查询:

(1)多个字段的查询

2021-04-21:Mysql 第二天_第2张图片

select * from 表名;-- *是全部的字段

 

(2)去除重复

select distinct address from student;

(3)计算列

2021-04-21:Mysql 第二天_第3张图片

-- 如果有null参与的运算,计算结果都为null

select name,math,english,math + ifnull(english,0) from student;

2021-04-21:Mysql 第二天_第4张图片

(4)起别名

select name,math,english,math + ifnull(english,0) (as) 总分 from student;

此处省略as也行 

 

条件查询:

2021-04-21:Mysql 第二天_第5张图片

查询年龄大于20岁

select * from stu where age > 20;

select * from stu where age <= 20;

不等于:

<>     !=

&&  AND

between   and

or ||

age in (22,18,25)

 

 

 

1.排序查询  

2.聚合函数

3.分组查询

4.分页查询

查询表中的数据

 

 

3.约束

4.多表之间的关系

5.范式

6.数据库的备份和还原

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(mysql,sql,数据库)