İÇİNDE yerine DEĞİL JOIN kullanarak kayıtlarını ortadan kaldırın, ama ben "değil de" kullanmaktan kaçınmak çalışıyorum:Bunu için beklediğiniz gibi bir
: Bunu denedimselect * from subscribers ls join emailopens eo
on ls.subscriberid=eo.subscriberid
where ls.listid=1381
and opentime > 1458864000
and emailaddress not IN (select emailaddress from subscribers where listid=1384)
select * from subscribers ls join emailopens eo
on ls.subscriberid=eo.subscriberid left join subscribers ls2
on ls.emailaddress=ls2.emailaddress
where ls.listid=1381
and opentime > 1458864000
and ls2.listid=1384
Sorun, yalnızca aynı e-postaya sahip satırları yalnızca listid=1381
ve listid=1384
'da döndürmesidir. Ben bir sol birleşim kullanıyorum bu yana where listid=1381
TÜM satırları döndürmek gerektiğini ve aynı e-postanın 1384
olduğu satırlarda veri olması gerektiğini düşündüm, ancak 1381
ve 1384
değil bir e-posta varsa, null
gösterir ls2.*
sütun.