0

我正在介绍数据库类,但我的查询遇到了问题。我正在尝试返回将为 PurchaseOrderHeader 生成的信息。我不能让它返回任何东西。

Use [Sandwiches Inc]
GO

DECLARE 
@VendorID INT,
@TodaysDate DATETIME,

SELECT @VendorID = 3,
@TodaysDate = GETDATE();

SELECT
@VendorID AS Vendor,
@TodaysDate AS TDate,
V.Name,
V.Phone,
A2.Address1,
A2.Address2,
A2.AdressState,
A2.City,
A2.Zip,
A1.Address1,
A1.Address2,
A1.AdressState,
A1.City,
A1.Zip
FROM Vendor AS V
INNER JOIN VendorAddress AS VA1 on V.VendorId = VA1.VendorId
--INNER JOIN VendorAddress AS VA2 on V.VendorId = VA2.VendorId
INNER JOIN VdrAddress as A1 on VA1.VdrAddressId = A1.VdrAddressId
INNER JOIN VdrAddress AS A2 on VA1.VdrAddressId = A2.VdrAddressId
WHERE A1.Name = 'Billing' And A2.Name = 'Shipping' And V.VendorId = 3
GO

就像现在一样,它执行但不返回任何列。如果我只做 A1 或 A2 并注释掉其中一个,它就可以了。正是当我尝试同时做这两件事时,它才会失败。

任何帮助,将不胜感激。如果您需要更多信息,我可以详细说明。

4

1 回答 1

0

我不认为您删除了 WHERE 约束以查看更大的结果集中是否实际上没有任何内容?

我还假设所有表格中都有相关数据?

我将从这里开始删除除一个连接之外的所有连接,然后慢慢重新添加它们,这样我就可以缩小问题所在的范围。

试试看,然后再回来告诉我们更多细节。

(Ps。当我们不知道表格中的内容时,这很难做到)

于 2012-11-27T02:47:28.750 回答