数据库 - 数据表单表操作

查询数据表的所有数据 (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,只仅仅用来删除全部数据,也就是后面不能有过滤条件
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容