SQLServer--简单子查询

时间:2021-09-14 04:35:08

子查询的使用

SQLServer--简单子查询

use StuManageDB
go
--使用变量方式实现
declare @StuId int

Select @StuId=StudentId from Students where StudentName='张永利' Select StudentName,Gender,Age from Students where StudentId>@StuId --使用子查询实现 Select StudentName,Gender,Age from Students where StudentId>(Select StudentId from Students where StudentName='张永利')

使用子查询替换表连接查询

查询成绩大于90的学员姓名

SQLServer--简单子查询


--使用等值连接查询
select StudentName from Students inner join ScoreList on Students.StudentId = ScoreList.StudentId where SQLServerDB>90 --使用子查询 Select StudentName from Students where StudentId= (Select StudentId from ScoreList where SQLServerDB>90) 

子查询使用总结

测试 大于80的学员姓名
SQLServer--简单子查询

1–表连接可以用子查询替换,但有的子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。
2–子查询比较灵活、方便、常作为增删改查的筛选条件、适合操纵于一个表的数据
3–表连接更适合于查看多表的数据