на основе вашего краткого описания, я полагаю, вы хотели получить список неиспользованных chequeno
. Вы можете использовать рекурсивный cte для генерации списка доступных проверок no на основе chequebookfrom
и chequebookto
изатем сверьтесь с таблицей payments
для использованных chequeno
; with rcte as
(
select bankid, chequeno = chequebookfrom, chequebookto
from chequebook
union all
select bankid, chequeno = chequeno + 1, chequebookto
from rcte
where chequeno < chequebookto
)
select *
from rcte r
where not exists
(
select *
from payments x
where x.bankid = r.bankid
and x.chequeno = r.chequeno
)