2012-07-07 4 views

답변

0

가능한 경우 하위 쿼리를 사용하지 않는 것이 좋습니다. INNER JOIN은 조인 기준을 충족시키는 행만 리턴합니다.

SELECT DISTINCT 
    x.id 
FROM 
    table_x x 
    INNER JOIN table_y y ON (x.id = y.id_column_in_y) 
1

LEFT JOIN을 사용합니다. 자세한 설명과 예는 여기에 있습니다.

Visual Joins

2

어쩌면 당신은 같은 작업을 수행 할 수 있습니다

SELECT id FROM table_x WHERE id NOT IN (SELECT column_foo FROM table_y); 
4
SELECT id FROM x 
    WHERE NOT EXISTS (SELECT * FROM y WHERE foo = id) 

또는

SELECT id FROM x 
    WHERE id NOT IN (SELECT foo FROM y) 

또는 y.foo 경우

이 널 (NULL) 열 수 없습니다, 당신도 할 수 있습니다

SELECT x.id FROM x 
    LEFT JOIN y ON x.id = y.foo 
    WHERE y.foo IS NULL 
관련 문제