簡體   English   中英

MS Access 2007中的SQL內部連接

[英]SQL Inner join in MS Access 2007

我在Access數據庫中遇到內部聯接問題。 我有兩個表,每個表都有兩列。 在兩個表中一個是MID,另一個是DOB。 第一個表的名稱為maintable,其他名稱為under5。 我想將其與maintable匹配后檢索under5表中存在的所有那些記錄,因此我使用了內部聯接。 問題是有一個MID 10106,其在under5表中的頻率是2,在主表中是5,但是在運行查詢后,返回的MID(10106)的數量是10(我猜期望的行為應該是2),這確實是荒謬的。 請幫助我解決這個問題。 這是我的查詢:

SELECT maintable.MID, maintable.DOB, Under5.MID, Under5.DOB
FROM under5
INNER JOIN maintable ON under5.MID=maintable.MID;

這種行為絕對可以。

主表中的每一行將與內部表中的每一行匹配。 由於主表中有5行,內部表中有2行5 * 2 = 10行

Can there be any other way so that i could only retrieve those MID and DOB 
that is present in under5 table after matching it with maintable.

嘗試這個

SELECT distinct Under5.MID, Under5.DOB 
FROM under5, MainTable
where under5.mid = mainTable.mid

您正在描述一個半聯接,例如嘗試:

SELECT Under5.MID, Under5.DOB
  FROM under5
 WHERE EXISTS (
               SELECT * 
                 FROM maintable 
                WHERE maintable.MID = under5.MID
              );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM