Returning rows which appear in both recordsets only.
I am recording when emails are sent to members for a particular event, but I want to ensure that if a member id is already stored for that event, it is not stored again.
I have 2 queries set up.
the first query retrieves all of the member ids from the members table whose id does not appear in the eventmember table for (eg) event 15
SELECT MemberID AS MEMID FROM tblmembers
WHERE tblmembers.MemberID NOT IN (SELECT MemberID FROM tbleventmember WHERE EventID = 15)
My recordset returns the rows shown on the left in the uploaded image
the second query retrieves the member ids for all of the members I have selected in my form
SELECT MemberID AS MEMID
FROM tblmembers
WHERE tblmembers.MemberID =1
OR tblmembers.MemberID =6
OR tblmembers.MemberID =4
OR tblmembers.MemberID =5
OR tblmembers.MemberID =13
OR tblmembers.MemberID =2
As you can see, of the selected member ids only member id 2 appears in both recordsets, and this is the only one I want to insert into my table,
I tried combining the 2 queries, but that doesn't give me the result I want.
SELECT MemberID AS MEMID FROM tblmembers
WHERE tblmembers.MemberID = 1
OR tblmembers.MemberID = 6
OR tblmembers.MemberID = 4
OR tblmembers.MemberID = 5
OR tblmembers.MemberID = 13
OR tblmembers.MemberID = 2
AND tblmembers.memberid NOT IN (SELECT MemberID FROM tbleventmember WHERE EventID = 15)
I can see what is wrong,
I wondered is it possible to create the correct syntax without creating a view or a stored procedure ?