SQL Exists Condition

The exists condition is considered to be met if the subquery returns more than one row. It always used to test whether relevant recrods exist and filter out those extraneous results.

The common case is that A object and B object have an association, which contains all the relationships between A and B records, and you can utilize this association object to find records of A without relationship with B. Below is a sql statement in ORACLE to select specific A records which have relationship with B:

SELECT a.id FROM a, association where association.aid= a.id and exists (SELECT NULL FROM b WHERE b.id=association.bid)

NULL keyword is used to increase performance.

猜你喜欢

转载自buckyang.iteye.com/blog/1354596