Het gebruik van ~
suggereert dat u Postgre gebruikt. Als dat zo is, doen de twee query's heel verschillende dingen. In Postgres neemt u de tabel die wordt bijgewerkt niet op in de from
clausule.
Dus ik denk dat je wilt:
update fromemailaddress
set call = true
from email
where email.fromemailaddress = fromemailaddress.fromemailaddress and
LOWER(email.subject) ~ 'tester';
Uw versie werkt alle rijen in fromemailaddress
bij omdat er geen voorwaarde is om fromemailaddress
. te verbinden in de update
clausule en fea
in de from
clausule.
Let ook op:de left join
is niet nodig omdat de where
clausule verandert het hoe dan ook in een inner join.