我嘗試了所有可能的連接和子查詢,但無法獲取數據以僅返回表2中與供應商ID完全匹配的一個值。如果我沒有包含在查詢中的地址,我會得到一個供應商ID。我怎樣才能做到這一點,以便當我添加地址時,我只需要我添加地址之前獲得的一個供應商。只返回與表1上的ID相匹配的值
表1中的供應商必須是VEN-CLASS IS NOT NULL。
這是我最後一次嘗試使用子查詢:
SELECT DISTINCT APVENMAST.VENDOR_GROUP,
APVENMAST.VENDOR,
APVENMAST.VENDOR_VNAME,
APVENMAST.VENDOR_CONTCT,
APVENMAST.TAX_ID,
Subquery.ADDR1
FROM (TEST.dbo.APVENMAST APVENMAST
INNER JOIN
(SELECT APVENADDR.ADDR1,
APVENADDR.VENDOR_GROUP,
APVENADDR.VENDOR,
APVENMAST.VEN_CLASS
FROM TEST.dbo.APVENADDR APVENADDR
INNER JOIN TEST.dbo.APVENMAST APVENMAST
ON (APVENADDR.VENDOR_GROUP = APVENMAST.VENDOR_GROUP)
AND (APVENADDR.VENDOR = APVENMAST.VENDOR)
WHERE (APVENMAST.VEN_CLASS IS NOT NULL)) Subquery
ON (APVENMAST.VENDOR_GROUP = Subquery.VENDOR_GROUP)
AND (APVENMAST.VENDOR = Subquery.VENDOR))
INNER JOIN TEST.dbo.APVENLOC APVENLOC
ON (APVENMAST.VENDOR_GROUP = APVENLOC.VENDOR_GROUP)
AND (APVENMAST.VENDOR = APVENLOC.VENDOR)
WHERE (APVENMAST.VEN_CLASS IS NOT NULL)
看起來都在你的屏幕截圖返回的值是不同的,相對於選中的列(即供應商ID似乎被關聯到多個地址。)你怎麼知道哪些地址是你想要的嗎?使用返回的供應商地址是否有關係? – Daileyo 2015-01-09 23:46:36