【发布时间】:2017-08-04 08:38:10
【问题描述】:
我有一个包含 FULL OUTER JOIN 的查询,我想在 Access 中实现它。
我知道这可以在访问中使用 UNION 查询来完成,但我完全不知道如何。我读了一些文章,但没有理解。这是我想在访问中重写的 SQL Server 查询。通过描述它的工作原理帮助我理解它。
SELECT tblPurchaseMain.Purchase_Date, tblPurchaseDetail.Quantity, tblPurchaseDetail.Rate,
tblProduct.Product_Name, tblProductCategory.Product_Category_Name, tblSupplier.Supplier_Name,
tblSupplier.Supplier_Address, tblSupplier.Supplier_Phone_No, tblCompany.Company_Name,
tblPurchaseDetail.Amount, tblPurchaseDetail.Discount, tblPurchaseMain.TotalAmount,
tblPurchaseMain.Service_Tax, tblPurchaseDetail.TaxableAmount,
tblPurchaseDetail.Purchase_Main_ID, tblPurchaseDetail.VAT,
tblPurchaseMain.Purchase_Other_Charges
FROM
tblPurchaseDetail
INNER JOIN
tblPurchaseMain ON tblPurchaseDetail.Purchase_Main_ID = tblPurchaseMain.Purchase_Main_ID
INNER JOIN
tblProduct ON tblPurchaseDetail.Product_ID = tblProduct.Product_ID
INNER JOIN
tblProductCategory ON tblProduct.Product_Category_ID = tblProductCategory.Product_Category_ID
INNER JOIN
tblSupplier ON tblPurchaseMain.Supplier_ID = tblSupplier.Supplier_ID
FULL OUTER JOIN
tblCompany ON tblPurchaseMain.Company_ID = tblCompany.Company_ID
WHERE
(tblPurchaseMain.Purchase_Main_ID =" & _PurchaseBillNo & ")
AND
(tblPurchaseMain.Company_ID = " & CompanyID & ")".
谢谢。
【问题讨论】:
-
任何类型的 JOIN 都与 UNION 没有共同之处,完全不同。任何一方都无法完成对方所做的事情。那么你到底想完成什么?
-
我想要基于 MS-Access 中上述查询的结果。上面的查询在 SQL Server 上运行良好,但由于使用 FULL OUTER JOIN 而在 Access 上失败
标签: sql-server ms-access join full-outer-join