SELECT count(id) FROM X
LEFT OUTER JOIN Y ON (y.X_id = X.id AND y.foo = 'bar')
WHERE y.X_id is null
Je was dichtbij.
Voer eerst de join uit zoals normaal en selecteer vervolgens alle rijen waarvoor een not null
rij in Y is in feite null
, zodat u zeker weet dat er een "geen overeenkomst" is en niet alleen een null
waarde in Y.
Let ook op de typfout (sinds gecorrigeerd) die u in de query hebt gemaakt:
LEFT OUTER JOIN Y AS
-- should be
LEFT OUTER JOIN Y ON
-- This however is allowed
LEFT OUTER JOIN table2 as Y ON ....