[英]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.