sql语句基础语法之 数据表的添加相关 ​字段相关操作 ​数据筛选相关操作 ​数据排序相关操作 ​聚合函数

3月18日 数据表的筛选数据,字段操作,聚合函数

内容如下:

​ 数据表的添加相关

​ 字段相关操作

​ 数据筛选相关操作

​ 数据排序相关操作

​ 聚合函数

数据表的添加相关

use mydb;
create table class_img
(
  `id` int unique key auto_increment comment'序号',
  `grade` int not null comment'学生年级',
  `major`char(10) not null comment'专业名称',
  `name` varchar(255) not null comment'学生姓名',
  `score` int not null comment'考试成绩'
);
insert into class_img values
(default,1,'大数据','张三',99),
(default,2,'物联网','李文',98),
(default,1,'医学院','王五',98),
(default,1,'汽车院','张好学',99),
(default,2,'物联网','李想啦',98),
(default,1,'工程院','王个哈',98),
(default,1,'大数据','张哥',99),
(default,2,'物联网','李文人',98),
(default,1,'医学院','王五人',98),
(default,1,'医学院','李五华',98);
-- 查看我们创建的表
select * from class_img;

-- 2. 添加单行内容
-- (1) 不按照表头顺序添加数据(限定非空的数据,一定要添加)
insert into class_img(score,grade,major,`name`)values(93,3,'汽车院','李浩');

-- (2) 按照表头顺序添加数据(不想填的用default欠缺来代替)
insert into class_img values (default,1,'师范院','苗苗',94,default,default);
alter table class_img
add state int default 0 comment'状态为0为优秀,1则为良好';
select * from class_img;

字段相关操作

-- 一、修改字段相关的操作
-- 1. 在数据表最后添加新的一列
alter table class_img
add age int;
select * from class_img;

-- 2. 在数据表的开头添加新的一列,也就是字段
alter table class_img
add school varchar(255) not null first;

-- 3. 删除字段
alter table class_img drop column school;

-- 4. 修改字段名
alter table class_img rename column `name` to my_name;
select * from class_img;

-- 5. 修改字段类型
alter table  class_img modify column grade char(45) not null;

-- 6. 修改字段的默认值
-- 若本身存在默认值,需要先删除默认值!
alter table class_img alter column  state drop default;
-- 给state添加默认值'1'
alter table class_img alter column state set default 1;
select * from class_img;

-- 7. 修改字段的位置
-- (1) 把字段放在开头位置
alter table class_img modify state int first;

-- (2) 把字段移动到指定的字段之后
alter table class_img modify  state int after id;

数据筛选相关操作

-- 二、筛选数据的相关操作
-- 1. 搜索几到几之间的内容
-- 搜索ID=2 到 ID=6 之间的内容
select * from class_img where id between 2 and 6;

-- 2. limit(限制搜索行数)
select * from class_img limit 5 ;-- 搜索前5行的内容
select * from class_img limit 2,5 ; -- 搜索从第2+1行开始向后搜索5行内容

-- 3. in / not in(从语句右边向左读更容易理解!)
select * from class_img where score in('99','98'); -- 搜索99和98分的同学
select * from class_img where score not in('99','98'); -- 搜索没有考到99和98的所有同学
-- 除了用这种方法,还可以用判断语句
select * from class_img where score='99' or score='98';
select * from class_img where  score>='98';

-- 4. is null / is not null (搜索空值或非空值数据)
select * from class_img where age is null ;
select * from class_img where age is not null ;

数据排序相关操作

-- 三、数据排序相关操作
-- order (asc是升序,desc是降序,默认状态是升序)
select * from class_img order by score;  -- 升序排列
select * from class_img order by score asc; -- 升序排列
select * from class_img order by score desc; -- 降序排列

聚合函数

-- 四、聚合函数系列
-- 1. sum()求和
select sum(score) from class_img;
-- 限制条件,只求1年级的学生成绩总和
select sum(score) from class_img where grade=1; 

-- 2. min / max 找最值
select max(score) from class_img;
select min(score) from class_img;
select min(score) from class_img where grade=1;

-- 3. avg 求平均值
select avg(score) from class_img where grade=1;

-- 4. count 统计行数(人数)
select count(*) from class_img; -- 统计所有的行数
select count(score) from class_img where major ='大数据'; -- 统计大数据学生来参加考试的人数
  • 25
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值