SqlServer_处理复杂外部连接;

SqlServer_处理复杂外部连接;,第1张

概述数据表:Vendors供应商表、Address地址信息表、VendorAddress供应商地址关联表; 说明:因为有可能一个供应商对应多个地址,一个地址对应多个供应商,所以需要VendorAddress关联表; 要求:显示所有供应商的名字、地址信息; 实现: 1、两次外部连接 SELECT v.VendorName, a.Address FROM Vendors v LEFT OUTER JOIN 数据表:vendors供应商表、Address地址信息表、vendorAddress供应商地址关联表; 说明:因为有可能一个供应商对应多个地址,一个地址对应多个供应商,所以需要vendorAddress关联表; 要求:显示所有供应商的名字、地址信息; 实现: 1、两次外部连接 SELECT v.vendorname,a.Address FROM vendors v left OUTER JOIN vendorAddress va ON v.vendorID = va.vendorID left OUTER JOIN Address a ON va.AddressID = a.AddressID; 2、外部连接、内部连接合用 SELECT v.vendorname,a.Address FROM vendorAddress va JOIN Address a ON va.AddressID = a.AddressID RIGHT OUTER JOIN vendors v ON v.vendorID = va.vendorID; 3、错误结合 SELECT v.vendorname,a.Address FROM vendors v left OUTER JOIN vendorAddress va ON v.vendorID = va.vendorID JOIN Address a ON va.AddressID = a.AddressID; 此时,所得结果不是全部供应商信息。从上面可知,先用左外部链接查询出所有的供应商,但后边用内部链接时就又排除那些不匹配项; 总结:相对来说,对于1、2方案,选用哪个好?一般没什么明显优点,但在这里,建议选用2号方案!通常,我们应首先使用内部连接,然后尽量少地使用外部连接,这样可减少代码中的错误。 总结

以上是内存溢出为你收集整理的SqlServer_处理复杂外部连接;全部内容,希望文章能够帮你解决SqlServer_处理复杂外部连接;所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1169527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存