У меня есть две таблицы:
Table A
---------
id | num_of_records
---|---------------
10 | 2
20 | 9
30 | 1
40 | 3
Table B
---------
id | details
---| --------
10 | somedetail 2
10 | somedetail 3
20 | foobar
30 | random
40 | random 2
В приведенном выше примере я хочу получать перекоды только в том случае, если num_of_recods
из TableA
не соответствуют count(*)
из TableB
, поэтому на основе результата выше:
id | difference
---| --------
20 | 8
40 | 2
Мой реальный TableB
имеет около 20 миллионов записей, а TableA
имеет около 4 тысяч записей.
Я написал что-то подобное, что не работает select id from tableA join on tableB where tableA.num_of_records <> (select count(*) from tableB where id = id);