diff --git a/process/Campaign_lib/process.js b/process/Campaign_lib/process.js
index 48bc233b1aae6ec7cc7b8cb5945f0c5d4ac38f5f..4021c65e1c65567d2922d3d2ce31db2deec94e60 100644
--- a/process/Campaign_lib/process.js
+++ b/process/Campaign_lib/process.js
@@ -357,13 +357,13 @@ CampaignUtils.GetContactIdsNotInCampaignByCondition = function(pCampaignId, pCon
 
 CampaignUtils.GetContactIdsInCampaignByCondition = function(pCampaignId, pCondition, pRightJoinContacts)
 {
-    let query = "select CONTACT.CONTACTID from PERSON"
+    let query = "select CONTACT.CONTACTID from CONTACT"
     
-    if(pRightJoinContacts == "true")
-        query += " right"
+//    if(pRightJoinContacts == "true")
+//        query += " right"
     
-    query += " join CONTACT on (CONTACT.PERSON_ID = PERSON.PERSONID)"
-    + " join ORGANISATION on (ORGANISATION.ORGANISATIONID = CONTACT.ORGANISATION_ID)"
+    query += " left join PERSON on (CONTACT.PERSON_ID = PERSON.PERSONID)"
+    + " left join ORGANISATION on (ORGANISATION.ORGANISATIONID = CONTACT.ORGANISATION_ID)"
     + " left join ADDRESS on (ADDRESS.ADDRESSID = CONTACT.ADDRESS_ID)"
     + " left join CAMPAIGNPARTICIPANT on CAMPAIGNPARTICIPANT.CONTACT_ID = CONTACT.CONTACTID"
     + " where " + pCondition