2012-05-15 4 views
1

foreignfield book_id 가진 books 테이블에 belongsTo 연결 가진 items 테이블이 있습니다. book_id이있는 items을 어떻게 찾을 수 있습니까? 해당 ID를 가진 books에는 기록이 없습니다. 그 이유는 어떻게 든 books 레코드가 삭제되었지만 연결된 items 레코드가 삭제 되었기 때문입니다. 각 책은 ID가있는 경우sql 찾기 누락 된 연결

답변

2

다음이

select * from items where book_id not in (select ID from books) 
+0

간단하고 효과적인 시도. 감사! – LordZardeck

1
select i.* 
from items as i 
left join books as b 
on i.book_id = b.id 
where b.id is null 
+0

이것은 DB 크기와 구성에 따라 훨씬 빠를 수 있으므로 사용해보십시오. – Josh