MsSqlServer语句(二)

2015-07-24 10:42:10 · 作者: · 浏览: 9
lass.tClassId
inner join TblScore
on TblStudent.tSId=TblScore.tSId
--
select * from vw_Stu_Cla_Sco_newView --查询视图
drop view vw_Stu_Cla_Sco_newView --删除视图


--查询年龄超过20岁的学生的姓名、年龄及所在班级

select TblStudent.tSName,TblStudent.tSAge,TblClass.tClassName from TblStudent
inner join
TblClass
on
TblStudent.tSClassId=TblClass.tClassId
inner join
TblScore
on
TblStudent.tSId=TblScore.tSId
where TblStudent.tSAge>20

--
--查询所有学生(参加及未参加考试的都算)及成绩
select * from TblStudent
inner join TblScore
on TblStudent.tSClassId=TblScore.tSId --参加考试的学生

select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
left join TblScore
on TblStudent.tSClassId=TblScore.tSId --参加考试的学生和没参加考试的学生


select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
left join TblScore
on TblStudent.tSClassId=TblScore.tSId
where TblScore.tSId is null --没参加考试的学生

--查询所有参加考试的,english分数不为null学生姓名、年龄及成绩

select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
inner join TblScore
on TblStudent.tSClassId=TblScore.tSId
where TblScore.tEnglish is not null --参加考试的学生,英语成绩不为null

--练习3:查询所有学生(参加和未参加考试)的学生姓名、年龄、成绩,如果没有参加考试显示缺考,如果小于english&math60分显示不及格
use nononodeleteImportant
select TblStudent.tSName,TblStudent.tSAge,英语成绩=(case
when tEnglish is null
then '缺考'
else
CONVERT(nvarchar,tEnglish)
end),数学成绩=(case
when tMath IS null
then '缺考'
else
CONVERT(nvarchar,tMath)
end ),是否及格=(case when tEnglish>60 and tMath>60 then '及格'
else '不及格'
end) from TblStudent left join
TblScore on TblStudent.tSId=TblScore.tSId


select * from TblArea
select t.AreaId,t.AreaName,t1.AreaName from TblArea as t inner join TblArea as t1 on t.AreaPId=t1.AreaId

--声明变量
declare @number int ;
set @number=30;
print @number
select @number
if(@number=30)
begin
print '好帅'
end
else
begin
select '真心恶心'
end



declare @avg int =0
set @avg=(select AVG(tMath) from TblScore)
if(@avg>60)
begin
select top 3 * from TblScore order by tMath desc
end
else
begin
select top 3 * from TblScore order by tMath asc
end