1
1436141288
V1
2022/03/28阅读:26主题:自定义主题1
sql day2
DML
DML是啥?

DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行「增」、 「删」、「改」操作
-
添加数据(INSERT) -
修改数据(UPDATE) -
删除数据(DELETE)
添加数据(INSERT)
给指定的字段添加数据
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...);
-
例子 目前我有一张表,表名是employee字段为「id, workno, name, gender,age,idcard,entrydate」
我要给他添加一条数据
insert into employee(id,workno,name,gender,age,idcard,entrydate)
values(1,'1','Itcast','男',10,'123456789012345678','2000-01-01');
values中所对应的值为括号中的字段名。
-
插入完成后,可以使用图形化界面查看,或者使用sql语句
select * from employee;
3.在添加的时候要注意添加的值是否满足字段的类型,比如类型是「tinyint」,但是你添加了 「-1」这个值进去,他就会报错,因为tinnyint的取值只在0-255之间。
给全部字段添加数据
INSERT INTO 表名 VALUES (值1, 值2, ...);
这个时候就需要按照字段的先后顺序来顺着吧值写进去
批量添加数据
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ;
或者
INSERT INTO 表名 VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ;
-
浅浅的总结一下 -
插入有给指定字段添加数据,给全部字段添加数据和批量添加数据 -
插入数据时,指定的字段顺序需要与值的顺序是一一对应的 -
字符串和日期型数据应该包含在引号中。 -
插入的数据大小,应该在字段的规定范围内。
-
修改数据(UPDATE)
修改数据的具体语法为:
UPDATE 表名 SET 字段名1 = 值1 , 字段名2 = 值2 , .... [WHERE 条件 ] ;
其中,「WHERE」条件可以指定修改的具体对象
例如:
-
修改id为1的数据,将name修改为llssyy
update employee set name = 'llssyy' where id = 1;
-
修改所有人的年龄为男
update employee set gender = '男' ;
注意
-
修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。
删除数据(DELETE)
终于,删除是delete,而不是drop了(开个小玩笑) 删除数据的具体语法为:
DELETE FROM 表名 [ WHERE 条件 ] ;
「WHERE同样可有可无」 例子:
-
删除gender为女的员工
delete from employee where gender = '女';
-
删除所有员工
delete from employee;
浅浅的注意一下:
❝❞
DELETE 语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数据。 DELETE 语句不能删除某一个字段的值(可以使用UPDATE,将该字段值置为NULL即可)。
DQL
DQL又是个啥
DQL英文全称是Data Query Language(数据查询语言),数据查询语言,用来查询数据库中表的记录。
查询关键字: 「SELECT」
当然,查询可就没前面的那么简单啦 基本语法如下:
SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段列表
HAVING
分组后条件列表
ORDER BY
排序字段列表
LIMIT
分页参数
基本上来说,可以分为这几块
-
基本查询(无条件) -
条件查询(WHERE) -
聚合函数(count、max、min、avg、sum) -
分组查询(group by) -
排序查询(order by) -
分页查询(limit)
基本查询(无条件)
当要查询所有数据的时候
SELECT * FROM 表名;
这样他就会输出数据库中所有数据
当然你也可以指定字段查询
SELECT 字段1,字段2... FROM 表名;
字段设置别名
SELECT 字段1 [ AS 别名1 ] , 字段2 [ AS 别名2 ] ... FROM 表名;
SELECT 字段1 [ 别名1 ] , 字段2 [ 别名2 ] ... FROM 表名;
去除重复记录
SELECT DISTINCT 字段列表 FROM 表名;
例子:
-
查询指定字段 name, workno, age并返回
select name,workno,age from 表名;
-
查询返回所有字段
select id ,... from 表名;
select * from emp;
-
查询所有员工的工作地址,起别名
select workaddress as '工作地址' from 表名;
「as可以省略,但是建议还是不要省略了」
至此,程序员一生要做的东西其实我们已经学到了。敢问哪个程序员一生不是在「增删改查」呢
作者介绍
1
1436141288
V1