Отсутствуют записи между INNER и LEFT JOIN - PullRequest
1 голос
/ 13 апреля 2011

select id from table = 260 595 записей

select id from table left join table2 on table2.id = table.parent = 260 595 записей

select id from table inner join table2 on table2.id = table.parent = 260 192 записей

Какой самый простой способ узнать, какие записи в table имеют неправильное (несуществующее) объединение, чтобы я мог их исправить?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 13 апреля 2011
select id from table left join table2 on table2.id = table.parent
EXCEPT
select id from table inner join table2 on table2.id = table.parent
2 голосов
/ 13 апреля 2011

Используйте это (это даст вам идентификаторы в таблице, у которых нет соответствующих записей в таблице 2):

select id 
  from table left join table2 
    on table2.id = table.parent
 where table.parent is null
0 голосов
/ 13 апреля 2011
select id from table inner join table2 on table2.id <> table.parent
...