Converter consulta SQL para usar operadores de conjunto
Preciso concluir uma Consulta SQL (Oracle) usando um Operador Set, mas estou lutando para entender como ela seria implementada.
Esquema:
Customer (ID, firstName, lastName) - PrimaryKey: ID
Transaction (code, type, date, amount) - PrimaryKey: code
performs(code*, ID*) - PrimaryKey: code - ForeignKey: ID
A consulta precisa exibir o Customer.ID das pessoas que concluíram uma ou menos transações. Eu posso concluir isso usando o seguinte:
SELECT C.ID
FROM CUSTOMER C
INNER JOIN PERFORMS P
ON C.ID = P.ID
INNER JOIN TRANSACTION T
ON T.CODE = P.CODE
GROUP BY C.ID
HAVING COUNT(T.CODE) <= 1;
Mas, estou lutando para descobrir como usar um Operador de Conjunto para conseguir a mesma coisa. Eu acredito que eu deveria estar usando INTERSECT.
Qualquer ajuda seria apreciada!