sql server join 的用法!
2015-11-15 20:45
495 查看
1,新建测试表
create table Customers (Cust_Id int, Cust_Name varchar(10))
insert Customers values (1, 'Craig')
insert Customers values (2, 'John Doe')
insert Customers values (3, 'Jane Doe')
create table Sales (Cust_Id int, Item varchar(10))
insert Sales values (2, 'Camera')
insert Sales values (3, 'Computer')
insert Sales values (3, 'Monitor')
insert Sales values (4, 'Printer')
2,
--Inner Join
--两边都有的才筛选出来
select *
from Sales S inner join Customers C
on S.Cust_Id = C.Cust_Id
--Full Out Join
--两边都列出来,能匹配就匹配,不匹配的用NULL列出
select *
from Sales S full outer join Customers C
on S.Cust_Id = C.Cust_Id
--Cross Join
--列出两边所有组合,也叫笛卡尔集A.Rows * B.Rows
select *
from Sales S cross join Customers C
--Left Join
--以左边的表为主表,列出主表所有记录,能匹配就匹配,不匹配的用NULL列出
select * from Customers c left join sales s
on c.cust_id = s.cust_id
--Right Join
--以右边的表为主表,列出主表所有记录,能匹配就匹配,不匹配的用NULL列出
select * from Customers c right join sales s
on c.cust_id = s.cust_id
create table Customers (Cust_Id int, Cust_Name varchar(10))
insert Customers values (1, 'Craig')
insert Customers values (2, 'John Doe')
insert Customers values (3, 'Jane Doe')
create table Sales (Cust_Id int, Item varchar(10))
insert Sales values (2, 'Camera')
insert Sales values (3, 'Computer')
insert Sales values (3, 'Monitor')
insert Sales values (4, 'Printer')
2,
--Inner Join
--两边都有的才筛选出来
select *
from Sales S inner join Customers C
on S.Cust_Id = C.Cust_Id
--Full Out Join
--两边都列出来,能匹配就匹配,不匹配的用NULL列出
select *
from Sales S full outer join Customers C
on S.Cust_Id = C.Cust_Id
--Cross Join
--列出两边所有组合,也叫笛卡尔集A.Rows * B.Rows
select *
from Sales S cross join Customers C
--Left Join
--以左边的表为主表,列出主表所有记录,能匹配就匹配,不匹配的用NULL列出
select * from Customers c left join sales s
on c.cust_id = s.cust_id
--Right Join
--以右边的表为主表,列出主表所有记录,能匹配就匹配,不匹配的用NULL列出
select * from Customers c right join sales s
on c.cust_id = s.cust_id
相关文章推荐
- sql入门
- CentOS 7 源码编译MariaDB 5.5.46
- Redis是什么
- oracle与mysql的区别
- mysql主从复制配置管理
- Sqlite数据库初步的了解
- Sqlite数据库初步的了解
- Sql Server--如何自动备份数据
- 数据库索引,存储过程,视图,事务
- mysql事务处理用法与实例详解
- C# SQL SEVER连接建表
- Mysql在select子句中聚集函数和普通属性一起写出现的一个有趣的问题!
- 常用命令常用sql:SHOWVARIABLESLIKE'character%'
- MongoDB聚合运算之mapReduce函数的使用(11)
- SQL中的函数
- sqlite3使用简介
- SQLite3在iOS的使用
- mysql事务,SET AUTOCOMMIT,START TRANSACTION
- golang postgresql数据库驱动
- MySQL_MyISAM和InnoDB存储引擎的比较