查询数据表的所有数据 (1)
(查看 所有行 和 所有列 的数据)
- 书写格式:select * from 表名 ;
注意: 在实际的开发中,这种操作谨慎使用,因为在实际的业务中,数据量是非常的庞大的,一旦使用了这种操作,那么会严重影响我们的性能。也就是说,只要是查看所有行的操作都不要使用,并且 * 也尽量少用;数据库优化之一 - select:选择,查询
- from:来自
- *:所有的字段 (字段 == 列)
练习:查询person表中的所有数据
select * from person;
- Empty set:空集合
查看数据表的指定数据(2):
(查看 所有列 和 指定行 的数据)
- 书写格式:select * from 表名 where 条件; (过滤条件)
- where :在哪里
注意:目前我们只学习这一点查询的相关语句。后续还会讲超级多
练习:查看员工表(emp)中,员工号为7的员工的全部信息
select * from emp where id=7;
查看数据表的指定数据(3):
(查看 所有行 和 指定列 的数据)
-
书写格式:select 字段1,字段2.... from 表名 ;
练习:查询 emp 员工表中所有员工的编号,姓名,入职时间
select id,name,hiredate from emp;
查看数据表的指定数据(4):
(查看 指定列 和 指定行 的数据)
-
书写格式:select 字段1,字段2.... from 表名 where 条件;
练习:查询 emp 员工表中编号为4 的员工编号,姓名,入职时间
select id,name,hiredate from emp where id=4
总结:大家务必掌握(2)和(4)的使用,其中(2)
添加数据
1.添加全部的数据(全部的字段)
- 书写格式: insert into 表名 values(?,?,?,?.....);
- insert :插入
- into : 到...里面
- value:值
练习1:向表格中添加数据:id(1),name(张三),chines(63),math(36)
insert into person values (1,"张三",63,36);
select * from person; //查询数据验证一下
练习2:
insert into emp values(1,"张三",18,'男',3000.00,"2018-08-09");
select * from emp;
2.添加部分数据(部分的字段)
-
书写格式: insert into 表名 (字段1,字段2,字段3....)values(?,?,?....)
练习:
insert into emp (id,name,salary) values(5,"柳琪",6500.00);
select * from person; //查询数据验证一下
3.批量插入数据
书写格式:
-
部分字段批量插入:
insert into 表名 (字段1,字段2,字段3....)values(?,?,?..),(?,?,?..),(?,?,?..)....;
练习:
insert into emp (id,name,salary) values
(3,"红宇",4532.00),
(4,"雪洋",6323.00),
(5,"希佳",5213.00);
-
全部字段批量插入:
insert into 表名 values(?,?,?..),(?,?,?..),(?,?,?..);
insert into emp values
(6,"申航",20,'男',3500.00,now()),
(7,"文帅",21,'男',5642.00,"2020-1-3"),
(8,"思琪",19,'女',4586.00,"2020-2-3");
更新(修改)语句
修改部分指定数据
- 书写格式:
update 表名 set 字段名=值,字段名=值.... where 条件;
update: 更新;校正,修正
set: 设置,安排
- 案例分析
//建立表格person
create table person(
id int(20)primary key auto_increment,
name varchar(30)not null,
age int(10)
)charset=utf8;
//插入数据
insert into person(name,age)values("Tom",18);
insert into person(name,age)values("Jerry",15);
insert into person(name,age)values("jack",28);
insert into person(name,age)values("Roes",23);
insert into person(name,age)values("dj",22);
//查看数据
select * from person;
+----+-------+------+
| id | name | age |
+----+-------+------+
| 1 | Tom | 18 |
| 2 | Jerry | 15 |
| 3 | jack | 28 |
| 4 | Roes | 23 |
| 5 | dj | 22 |
+----+-------+------+
1.把person表中名字叫做Tom的数据,年龄改为30
update person set age = 30 where name="Tom";
select * from person; //验证修改后的数据
2.把person表中id为3的数据,名字改为张三
update person set name="张三" where id=3;
select * from person; //验证修改后的数据
3.把person表中id大于3的数据,年龄都改为80
update person set age=80 where id>3;
select * from person; //验证修改后的数据
同理:关系运算符全都适用于修改语句的条件判断(< , >, >= , <= , !=)
修改全部数据
- 修改的是整张表格当中所有的数据
- 书写格式:
update 表名 set 字段1=值,字段2=值,... ;
- 案例分析:
select * from person;
+----+--------+------+
| id | name | age |
+----+--------+------+
| 3 | 李灿 | 28 |
| 4 | Roes | 80 |
| 6 | Tom | 18 |
| 7 | Jerry | 15 |
| 8 | jack | 28 |
| 9 | dj | 22 |
+----+--------+------+
1.把person表中的所有数据,年龄改为25岁
update person set age = 25;
select * from person; // 验证修改后的结果
删除语句
- 就是把数据从表格中删除掉
删除指定部分数据
- 书写格式:
delete from 表名 where 条件;
- 案例分析:
select *from person;
+----+--------+------+
| id | name | age |
+----+--------+------+
| 1 | Tom | 252 |
| 2 | Jerry | 252 |
| 3 | 欣欣 | 252 |
| 4 | Roes | 252 |
| 5 | dj | 252 |
+----+--------+------+
1,删除person表中,id为4的数据
delete from person where id=4;
select * from person; // 验证删除后的结果
//删除范围性的数据
2,删除person中,年龄小于24的人
delete from person where age<24;
select * from person; // 验证删除后的结果
同理,关系运行符全部适用于删除语句的条件判断(<,>,>=,<=,!=)
删除全部数据(delete)
- 将表格中的全部数据删除(清空)
- 书写格式:
delete from 表名;
案例分析:
select *from person;
+----+--------+------+
| id | name | age |
+----+--------+------+
| 3 | 李灿 | 28 |
| 4 | Roes | 80 |
| 6 | Tom | 18 |
| 7 | Jerry | 15 |
| 8 | jack | 28 |
| 9 | dj | 22 |
+----+--------+------+
1.清空person表中的数据
delete from person;
select *from person;//验证删除后的数据
Empty Set //结果提示:空集
删除全部数据(truncate)
- 将表格中的全部数据删除(清空)
- 书写格式:
truncate table 表名;
delete 和 truncate的区别
- 使用delete删除全部数据时,如再添加数据,自动增加字段的值为删除时该字段的最大值加1
- 使用truncate删除全部数据时,如再次向表中添加数据,自动增加字段的值重新从1开始
- delete删除语句,可以在后跟where过滤条件,来实现删除部分或指定的数据
- truncate,只仅仅用来删除全部数据,也就是后面不能有过滤条件
网友评论