あなたのクエリは、実際には JOIN をまったく必要としません。
SELECT A.*
FROM tblA A
WHERE NOT EXISTS (SELECT 1 FROM tblB B WHERE A.f1 = B.f1);
Polyhedra SQL リファレンス マニュアル (ここから入手可能*=
) をざっと見てみると、 SQL-Server と Oracle がそれぞれ使用するまたはに相当するものは(+)
見当たりません。何かに頼る必要があるかもしれません。列が必要な LEFT JOIN の場合は次のようになります (私が知る限り、Polyhedra は UNION をサポートしています):
SELECT A.f1 AS A, b.f1 AS B
FROM tblA A, tblB B
WHERE A.f1 = B.f1
UNION ALL
SELECT A.f1 AS A, NULL AS B
FROM tblA A
WHERE NOT EXISTS (SELECT 1 FROM tblB B WHERE A.f1 = B.f1);
SQL Fiddle の例 (Polyhedra にはありません)
補遺
NOT EXISTS
は許されませんのでNOT IN
、
SELECT A.f1 AS A, b.f1 AS B
FROM tblA A, tblB B
WHERE A.f1 = B.f1
UNION ALL
SELECT A.f1 AS A, NULL AS B
FROM tblA A
WHERE A.F1 NOT IN (SELECT b.F1 FROM tblB B WHERE B.f1 IS NOT NULL);
無料の DBMS は数多くありますが、可能であれば、他のベンダーを検討することを強くお勧めします。