--使用Northwind
--连接查询
--内连接(Inner Join)
select p.* from Products p inner join [Order Details] o on p.ProductID=o.ProductID
go
select p.*,c.* from Products p inner join Categories c on c.CategoryID=p.CategoryID
go
--1、左外连接
select p.*,c.* from Categories c left outer join Products p on p.CategoryID=c.CategoryID order by p.ProductID
--2、右外连接
select p.*,c.* from Categories c right outer join Products p on p.CategoryID=c.CategoryID order by p.ProductID
--3、全外连接
select p.*,c.* from Categories c full outer join Products p on p.CategoryID=c.CategoryID order by p.ProductID
--子查询
--1、使用比较运算符的子查询
select * from Products where unitprice>(select avg(unitprice) from Products)
--2、使用IN的子查询
select * from Products where categoryID in (select categoryID from categories)
--3、使用some和any的子查询
select * from Products where unitprice<some(select avg(unitprice) from Products)
--4、使用All的子查询
select * from Products where unitprice<>All(select avg(unitprice) from Products)
--5、使用Exists的子查询
select * from Products where exists (select * from categories where categories.categoryID=Products.categoryID and categories.categoryID=2)