sql(增删查改)、聚合函数、分组、聚合函数的判断

1. 插入数据

  1. 默认表中字段插入数据

insert into 表名
values(数据,数据,数据)
  1. values的值根据你设置的什么类型添加

  2. 这一种是默认你设置的表中有多少个数据就插入多少个数据


  1. 指定表中的字段插入数据

insert into 表名(字段,字段)
values(数据,数据)
  1. 指定哪个字段就插哪个字段的值

  2. 指定多少个字段就插入多少个值


  1. 插入默认表中插入多条数据

insert into 表名
values(数据,数据,数据),
(数据,数据,数据),
(数据,数据,数据)
  1. 添加多条数据时,到后面加一个”“在添加要加入的值

  2. 指定表中的字段也同理


  1. 把表中的数据添加到系统的备份表中

insert into stu_backup select from 表名(已经创建好的表)
  1. stu_backup:是自己定义的虚拟备份表

  2. stu_backup:有系统自动创建的虚拟表

  3. 好处:当别人恶意删除你已经创建好的表中的数据,你可以通过stu_backup来还原已经创建好的表中数据


  1. 当别人恶意删除你已经创建好的表中的其中一条数据,如何使用你的备份表恢复

insert into 表名(已经创建好的表) select * from stu_backup where 字段=值
  1. where:放的是条件,可以确定你要指定要添加的哪条值


2. 如何修改表中的值

  1. 修改表中的指定值

update 表名 set (要修改的)字段=值
where 条件(字段=值)

如果不加条件,表中这一列的字段都变成了你要修改的值


  1. 修改多个字段的值

update 表名 set (要修改的)字段=值,(要修改的)字段=值
where 条件=值

3.知道年月日,如何计算年龄

year() --获取年份

math() --获取月份

day() --获取日

getdate() --获取系统时间

update 表名
set stuAge=datediff(YY,studrithday,getdate())

或者

update 表名
set stuAge=Year(studirthday)-year(getdate())


  1. 日期函数:

作用就是计算两个日期的差值

  1. select datediff(YY,2006-6-1,getdate()):计算2006年到系统时间差多少年

  2. select datediff(MM,2006-6-1,getdate()):计算2006年的月份到系统时间的月份差多少月

  3. select datediff(DD,2006-6-1,getdate()):计算2006年6月1日到系统时间的天数


3.删除数据

  1. 删除表中的所有数据

delete 表名 

  1. 删除表中的指定数据

where:放条件

delect 表名
where 字段=值

4.单表查询

  1. 查询整张表中的数据

select * from 表名

  1. 指定表中的字段查询数据

select 字段名 from 表名

  1. 指定条件查询所有数据

select * from 表名
where 字段=值

  1. 指定条件查询表中的字段

select 字段 from 表名
where 字段=值

  1. 使用and关键字

查询年龄在30-35岁之间

and:在什么之间

select * from 表名
where StuAge=32 and StuAge=40

  1. 使用or关键字

查询年龄在32,36,40岁的学员

or:或者

select * from 表名
where StuAge=32 or StuAge=36 or StuAge=40

5.匹配运算符查询

like:用于模糊查询

in :用于范围查询

between.....and....:用于区间查询


  1. 使用between...and...

查询年龄为30到35岁的学员

select * from 表名
where StuAge between 35 and 40

  1. 使用in

查询年龄为32,36,40岁的学员

select * from 学员
where StuAge in(32,36,40)

  1. 使用like

  1. like运算符通常跟通配符一起使用

  2. 通配符有两种%(百分号)和_(下划线)

  3. % :代表任意多个字符

  4. _ :代表任意单个字符

例:

查询姓陈的同学有哪些:

这个只查询姓陈两个字的名字

select * from 表名
where StuName like '陈_'

这个查询姓陈的后面不管有多少个字

select * from 表名
where StuName like '陈%'

6.字段起别名

  1. 第一种:

select 别名字=字段 from 表名
  1. 第二种:

select 字段 as 别名字 from 表名

7.聚合函数(统计函数)

  1. Count : 计算个数

  1. Sum : 计算总数

  2. Max : 计算最大值

  3. Min : 计算最小值

  4. Avg : 计算均值


1.Max

查出最大年龄的学员

select Max(StuAge) from 表名

2.Min

查出最小年龄的学员

select Min(StuAge) from 表名

  1. Avg

查出所有学员的平均年龄

 select Avg(StuAge) from 表名

  1. Sum

查出所有的学员总共的年龄

select sum(StuAge) from 表名

  1. Count

    查出总共有多少名学员

select Count(*) from 表名

8.联合查询

  1. union:联合查询

查询性别为男生的有多少人,查出女生有多少人

select Count(*) from 表名
where StuSex='男'
union
select Count(*) from 表名
where StuSex='女'

9.分组查询

  1. group by

给表中的男女分类

select StuSex from 表名 group by StuSex 
  1. 分组查询一般与聚合函数(统计函数)一起使用,也就是分类汇总

查出男生和女生人数各多少人

select Count(*) from 表名 
group by StuSex

  1. 查出每个班的平均年龄

select ClassName,Avg(stuage) from 表名
group by ClassName 

10.数据取整数

  1. select ceiling(3.1) : 向上取整数,不管小数点后面为几,小数点前面的数都加1

  2. select floor(3.5) : 向下取整数,不管小数点后面为几,小数点前面的数都为原数

  3. select ruond(3.3,0) : 四舍五入,小数点后面等于大于5则小数点前面的数加1,如果小于5反之,逗号后面的数0:代表保留几位小数


11.聚合函数的判断

  1. having:聚合函数的判断

查询哪些班级的男生人数超过3人的

select Count(*) from 表名
where StuSex='男'
group by ClassName
having Count(*)>3
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

꧁惜若༒奔已꧂

争取做到更好

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值