SQL的查询使用
最近被查询搞得有点头大,但也好像到达一个突破的瓶颈。把他写出来做一下记录,有需要参考的可以参考一下。
[实验目的和要求]
1.掌握SQL Server Management Studio中SQL
查询操作;
2.掌握SQL 的单表查询命令;
3.掌握SQL 的连接查询操作;
4.掌握SQL 的嵌套查询操作;
5.掌握SQL 的集合查询操作。
## 1. 对学生-课程数据库,应用SQL 语句实现以下查询要求:
1) 查询数学系学生的学号和姓名;
select sno,sname
from student
where sdept ='MA'
最后一句也可写为
where sdept in ('MA')
2) 查询选修了课程的学生学号;
select distinct sno
from sc
PS: distinct 可消除相同重复的行,如果没有distinct关键词,则默认为ALL
3) 查询选修了1号课程的学生学号和成绩,并要求结果按成绩降序排列,如果成绩相同,则按学号升序排列;
select sno,grade
from sc
where cno='3'
order by grade desc,sno asc
ps: desc指降序,asc指升序,一般默认为升序
4) 查询选修了1号课程且成绩在80-90分之间的学生学号和成绩,并将成绩乘以系数0.8输出;
select cno=1,sno,grade*0.8
from sc
where grade between 80 and 90
between and 用来查找范围内的元组,between 后 跟低值,and 后跟高值
5) 查询数学系或计算机系姓张的学生的信息;
select *
from student
where sdept in('CS','MA') and SNAME LIKE'张%'
ps: in谓词实际上是多个or运算符的缩写
最后一句也可写为
where (sdept ='CS'or sdept='MA' )and sname like'张%'
a