Použití ~
naznačuje, že používáte Postgres. Pokud ano, tyto dva dotazy dělají velmi odlišné věci. V Postgresu nezahrnujete aktualizovanou tabulku do from
doložka.
Takže si myslím, že chcete:
update fromemailaddress
set call = true
from email
where email.fromemailaddress = fromemailaddress.fromemailaddress and
LOWER(email.subject) ~ 'tester';
Vaše verze aktualizuje všechny řádky v fromemailaddress
protože neexistuje žádná podmínka pro připojení fromemailaddress
v update
doložka a fea
v from
doložka.
Poznámka:left join
je zbytečné, protože where
klauzule jej stejně změní na vnitřní spojení.