需要多方面的教育在SQL SERVER 2005/8上加入usinf TSQL [英] Need some education on muliple joins usinf TSQL on SQL SERVER 2005/8

查看:148
本文介绍了需要多方面的教育在SQL SERVER 2005/8上加入usinf TSQL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在将数据(客户编号)导入到我创建的新表中.我需要基于此数据创建报告.我将需要关联到aprox 10个不同的表,但是在第一个对联接之后,联接会有些混乱.前两个联接是左外部联接,因为我想确保我导入的所有客户编号都已显示,并且我联接的前两个表有很多需要的列.然后我切换到INNER joins.

掌握了大部分重要数据后,可以切换到INNER JOINS吗?代码如下:

I am importing data(customer numbers) into a new table I created.I need to create a report based on this data. I will need to relate to aprox 10 different tables but the joins get a bit confusing after the first couple joins. The first two joins are left outer joins because i want to make sure all the customer numbers i imported are showing and the first two tables I am joining have lots of needed columns. Then I am switching to INNER joins.

Is it OK to switch over to INNER JOINS after I have gotten most of the important data? The code is below:

SELECT C.CUSNO,P.PATNUM,P.FIRST_NAME,P.MIDDLE_NAME,P.LAST_NAME,
P.BIRTHDATE,P.PADDR1,P.PADDR2,P.PCITY,P.PSTATE,P.PZIP,P.PPHONE,
P.PHONE_TWO,P.PSSN,P.GENDER,P.PEMP,PC.PAYOR_POS,PC.POLICY,
PC.GROUP_NUM,PC.INSNO,D.DFIRST_NAME,D.DLAST_NAME,D.DADDR1,D.DCITY,
D.DSTATE,D.DZIP,D.DPHONE,D.NATIONAL_PROVIDER_ID,D.UPIN,

FROM LMSCU.dbo.PATMAS P
LEFT OUTER JOIN RCMANALYST.dbo.ENGLISH_CUSTNUM_07282011 C
ON C.CUSNO = P.CUSNO
LEFT OUTER JOIN LMSCU.dbo.PATCVG PC
ON C.CUSNO = PC.CUSNO
INNER JOIN LMSCU.dbo.DOCMAS D
ON P.PPHYS = D.PHYNO

推荐答案

您可以使用外部联接获取字段一侧不匹配如果您始终想要与您的条件匹配的值,请使用内部联接.除了需求变更外,您不会出于任何其他原因进行交换.
You use outer joins to get fields that don''t match on one side. If you always want values that match your condition, use inner joins. You don''t swap for any reason other than a change in requirements.


这篇关于需要多方面的教育在SQL SERVER 2005/8上加入usinf TSQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆