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
Byli jste blízko.
Nejprve proveďte spojení jako obvykle a poté vyberte všechny řádky, pro které not null
řádek v Y je ve skutečnosti null
, takže jste si jisti, že existuje "žádná shoda" a ne pouze null
hodnota v Y.
Všimněte si také překlepu (po opravení), který jste udělali v dotazu:
LEFT OUTER JOIN Y AS
-- should be
LEFT OUTER JOIN Y ON
-- This however is allowed
LEFT OUTER JOIN table2 as Y ON ....