数据库接触了这么长时间,仔细一想,增删改查具体都有哪些个东西呢,其实还是有点搞不清楚的,所以就需要总结一下了。
简单查询
Select 姓名 From 学生信息 Where 姓名='小王' AND 性别='女'
这个就是最简单的查询语句了,其中还可以用 “or”来增加筛选条件,AND表示前后条件都要符合才能查询出结果,而 OR 表示满足一个条件就就可以查询出来
Select 姓名 AS 学生姓名 From 学生信息
这个可以个性化改变列名,可以根据自己的需要修改
Select distinct 民族 from 学生信息
消除重复信息,查询结果只单独显示出不同的民族
Select * from 学生信息 where 家庭住址 like '河南%'
在此例中,通配符%用来查看家庭住址是河南的信息,当然,通配符还有很多,如 * ,_ 等
排序查询
Select * from 成绩信息 where 课程编号='1'
Order by 分数 ASC
这是课程编号为1的成绩按升序排列,asc 可写可不写
而DESC表示成绩按降序排列
Select * from 成绩信息 where 课程编号='1'
order by 分数 DESC, 学生编号
学生编号为默认升序排列,分数按降序排列
Select 课程编号,AVG(分数) from 成绩信息 GROUP BY (课程编号)
按照课程编号分组进行排序,各个考试编号所对应的成绩的平均值
rollup 可以对分组的所有组再进行取平均值,group by 还可以配合roll,cube 使用,效果也有所不同
使用Having子句查询
Select AVG(分数) from 成绩信息
Having AVG(分数)>=90
使用Having子句可以自定义查找范围,对聚合的结果再添加条件
插入数据
Insert into 学生信息 VALUES('')
这里是插入数据行信息语句,插入的信息需要与表中的数据类型一致,或者是只插入特定的列信息
Insert into 学生信息(姓名) values ('李明')
还要看数据表中有哪些是设置非空的列,非空的列必须要输入数据
INSERT…SELECT语句插入信息
Insert 更新信息
select * from 学生信息 where 家庭住址 like '河南%'
将学生信息中所有家庭住址在河南的信息都插入到更新信息表中,相当于复制作用
Select…into语句插入信息
该语句也可以实现插入语句的作用,但是和Insert select语句有所不同 ,select into语句会新建一个数据表,然后将数据保存在新的数据表中,而insert select语句是在已经保存了的数据表中插入数据
select *
into #更新信息
from 学生信息
where 性别='男'
此语句是将 学生信息 中的 性别为男 的信息插入到一个临时表(更新信息)中,临时表不会具体保存在数据库中,只是用来临时存放部分数据
Update修改数据
select * from 学生信息
update 学生信息 set 姓名='李明' where 学号='0001'
将学生信息中的学号为 0001 的学生的姓名 改为 “李明”
Update From查询 多表连接
Update 更新表 set N_sex=b.性别,N_ID=b.学号
from 更新表 a join 学生信息 b on a.N_name=b.姓名
从 学生信息 这个表中获取信息,将两个表通过 姓名 进行连接,然后把学生信息中的性别和学号信息更新到 更新表 中,当然也可以用where来增加筛选条件
Delete 删除信息
直接用delete删除信息
delete from 学生信息
where 学号='0001'
删除学生信息表中学号为0001的信息
where中使用运算符
select * from 成绩信息 where 考试编号='0101' and (分数 between 90 and 100)
查看成绩信息中考试编号为0101并且分数在90到100之间的学生信息,还有很多运算符,比如加减乘除,in,not in ……
总的来说就是 Insert增,delete删 ,update改,select查,当然,查询的方法还有很多很多,这里只是提到了最基础的方法。