sqlserver关联查询的INNER JOIN使用写法

 时间:2024-10-11 20:29:29

1、创建一个临时表,用于演示sqlserver语法中的INNER JOIN使用IF OBJECT_ID('tempdb..#tmp1') IS NOT NULL DROP TABLE #tmp1;CREATE TABLE #tmp1( EName varchar(50), -- 姓名 EAddress varchar(200) -- 地址);

sqlserver关联查询的INNER JOIN使用写法

2、创建另外一个临时表,用于演示sqlserver语法中的INNER JOIN使用IF OB亭盍誓叭JECT_ID('tempdb..#tmp2'像粜杵泳) IS NOT NULL DROP TABLE #tmp2;CREATE TABLE #tmp2( EName varchar(50), -- 姓名 ETitle varchar(200) -- 头衔);

sqlserver关联查询的INNER JOIN使用写法

3、往临时表中插入几行测试数据,其中包辖艮鲔鸣括插入Null值insert into #tmp1(EName, EAddress) values('员工1&#泌驾台佐39;, '中国北京');insert into #tmp1(EName, EAddress) values('员工10', NULL);insert into #tmp1(EName, EAddress) values('员工100', '法国巴黎');insert into #tmp2(EName, ETitle) values('员工1', NULL);insert into #tmp2(EName, ETitle) values('员工10', '职员');insert into #tmp2(EName, ETitle) values('员工99', '经理');

sqlserver关联查询的INNER JOIN使用写法

4、查询临时表中的测试数据select * from #tmp1;select * from #tmp2;

sqlserver关联查询的INNER JOIN使用写法

5、使用INNER JOIN关联两张表,查询地址不为空的结果,这种写法其实是不推荐的select *from #tmp1 ainner join #tmp2 b on b.EName = a.EName and a.EAddress IS NOT NULL

sqlserver关联查询的INNER JOIN使用写法

6、使用INNER JOIN关联两张表,查询地址不为空的结果,推荐写法,join子句中不要带过滤条件,仅含关联条件select *from #tmp1 ainner join #tmp2 b on b.EName = a.ENamewhere a.EAddress IS NOT NULL

sqlserver关联查询的INNER JOIN使用写法

7、从上面两种写法的结果相同可以看出,使用inner join关联的情况,过滤语句写在join子句和where子句是一样的效果。 但是,其他关联,如left join条件写在两个地方的效果是不一样的

sqlserver关联查询的INNER JOIN使用写法
  • 批处理打开软件
  • 为连接配置网络级身份验证
  • 怎样使用TOAD导入dmp数据库
  • vs2015如何附加进程调试
  • VMWare装Win10提示Device/CredentialGuard处理
  • 热门搜索
    关于诗的手抄报 花的手抄报 走进信息世界手抄报 推广普通话手抄报句子 关于海洋的手抄报 国防教育手抄报内容 异国风情手抄报 小学生爱国手抄报 小学生重阳节手抄报 2020国庆节手抄报内容