Mam problem z usuwaniem rekordów z tabeli PostgreSQL przy użyciu LEFT JOIN
.Jak usunąć wiersze za pomocą zewnętrznego łączenia
Chciałbym usunąć wiersze dostaję z następującym zapytaniem:
SELECT * FROM url
LEFT JOIN link_type ON url.link_type = link_type.id
WHERE link_type.id IS NULL
Aby to zrobić, tutaj jest to, co robiłam:
DELETE FROM url
USING link_type
WHERE url.link_type = link_type.id AND link_type.id IS NULL
prace Query ale niczego nie usuwać , chociaż dokładnie to wyjaśniono w dokumencie: http://www.postgresql.org/docs/current/static/sql-delete.html.
Czy mój problem wynika z pytania IS NULL
w zapytaniu lub czy czegoś mi brakuje?
Nie usuwa niczego, ponieważ gdy 'link_type.id' ma wartość null,' url.link_type = link_type.id' nie jest prawdziwe, więc te dwa warunki nigdy nie są spełnione łącznie. –