1. 插入数据
-
默认表中字段插入数据
insert into 表名 values(数据,数据,数据)
-
values的值根据你设置的什么类型添加
-
这一种是默认你设置的表中有多少个数据就插入多少个数据
-
指定表中的字段插入数据
insert into 表名(字段,字段) values(数据,数据)
-
指定哪个字段就插哪个字段的值
-
指定多少个字段就插入多少个值
-
插入默认表中插入多条数据
insert into 表名 values(数据,数据,数据), (数据,数据,数据), (数据,数据,数据)
-
添加多条数据时,到后面加一个”,“在添加要加入的值
-
指定表中的字段也同理
-
把表中的数据添加到系统的备份表中
insert into stu_backup select from 表名(已经创建好的表)
-
stu_backup:是自己定义的虚拟备份表
-
stu_backup:有系统自动创建的虚拟表
-
好处:当别人恶意删除你已经创建好的表中的数据,你可以通过stu_backup来还原已经创建好的表中数据
-
当别人恶意删除你已经创建好的表中的其中一条数据,如何使用你的备份表恢复
insert into 表名(已经创建好的表) select * from stu_backup where 字段=值
-
where:放的是条件,可以确定你要指定要添加的哪条值
2. 如何修改表中的值
-
修改表中的指定值
update 表名 set (要修改的)字段=值 where 条件(字段=值)
如果不加条件,表中这一列的字段都变成了你要修改的值
-
修改多个字段的值
update 表名 set (要修改的)字段=值,(要修改的)字段=值 where 条件=值
3.知道年月日,如何计算年龄
year() --获取年份
math() --获取月份
day() --获取日
getdate() --获取系统时间
update 表名 set stuAge=datediff(YY,studrithday,getdate())
或者
update 表名 set stuAge=Year(studirthday)-year(getdate())
-
日期函数:
作用就是计算两个日期的差值
-
select datediff(YY,2006-6-1,getdate()):计算2006年到系统时间差多少年
-
select datediff(MM,2006-6-1,getdate()):计算2006年的月份到系统时间的月份差多少月
-
select datediff(DD,2006-6-1,getdate()):计算2006年6月1日到系统时间的天数
3.删除数据
-
删除表中的所有数据
delete 表名
-
删除表中的指定数据
where:放条件
delect 表名 where 字段=值
4.单表查询
-
查询整张表中的数据
select * from 表名
-
指定表中的字段查询数据
select 字段名 from 表名
-
指定条件查询所有数据
select * from 表名 where 字段=值
-
指定条件查询表中的字段
select 字段 from 表名 where 字段=值
-
使用and关键字
查询年龄在30-35岁之间
and:在什么之间
select * from 表名 where StuAge=32 and StuAge=40
-
使用or关键字
查询年龄在32,36,40岁的学员
or:或者
select * from 表名 where StuAge=32 or StuAge=36 or StuAge=40
5.匹配运算符查询
like:用于模糊查询
in :用于范围查询
between.....and....:用于区间查询
-
使用between...and...
查询年龄为30到35岁的学员
select * from 表名 where StuAge between 35 and 40
-
使用in
查询年龄为32,36,40岁的学员
select * from 学员 where StuAge in(32,36,40)
-
使用like
-
like运算符通常跟通配符一起使用
-
通配符有两种%(百分号)和_(下划线)
-
% :代表任意多个字符
-
_ :代表任意单个字符
例:
查询姓陈的同学有哪些:
这个只查询姓陈两个字的名字
select * from 表名 where StuName like '陈_'
这个查询姓陈的后面不管有多少个字
select * from 表名 where StuName like '陈%'
6.字段起别名
-
第一种:
select 别名字=字段 from 表名
-
第二种:
select 字段 as 别名字 from 表名
7.聚合函数(统计函数)
-
Count : 计算个数
-
Sum : 计算总数
-
Max : 计算最大值
-
Min : 计算最小值
-
Avg : 计算均值
1.Max
查出最大年龄的学员
select Max(StuAge) from 表名
2.Min
查出最小年龄的学员
select Min(StuAge) from 表名
-
Avg
查出所有学员的平均年龄
select Avg(StuAge) from 表名
-
Sum
查出所有的学员总共的年龄
select sum(StuAge) from 表名
-
Count
查出总共有多少名学员
select Count(*) from 表名
8.联合查询
-
union:联合查询
查询性别为男生的有多少人,查出女生有多少人
select Count(*) from 表名 where StuSex='男' union select Count(*) from 表名 where StuSex='女'
9.分组查询
-
group by
给表中的男女分类
select StuSex from 表名 group by StuSex
-
分组查询一般与聚合函数(统计函数)一起使用,也就是分类汇总
查出男生和女生人数各多少人
select Count(*) from 表名 group by StuSex
-
查出每个班的平均年龄
select ClassName,Avg(stuage) from 表名 group by ClassName
10.数据取整数
-
select ceiling(3.1) : 向上取整数,不管小数点后面为几,小数点前面的数都加1
-
select floor(3.5) : 向下取整数,不管小数点后面为几,小数点前面的数都为原数
-
select ruond(3.3,0) : 四舍五入,小数点后面等于大于5则小数点前面的数加1,如果小于5反之,逗号后面的数0:代表保留几位小数
11.聚合函数的判断
-
having:聚合函数的判断
查询哪些班级的男生人数超过3人的
select Count(*) from 表名 where StuSex='男' group by ClassName having Count(*)>3