Olá
Como não vi como fazer direto em sql, tenho uma função, que resolve , veja se ajuda
stat func FverPulado(xtabela,xcampo)
/*
exemplo de chamada
nomeMatrizRetorno:=FverPulado( "cadcli","codigo")
verifica se tem numeracao pulado na tabela
retorna matriz com os numeros pulados
fb_executa é a minha rotina para executar o str, veja a sua
m_select ´e oretorno da minha funcao f_executa()
uso strzero e val , porque os meus codigo sao sempre completos , exe 000001
*/
local xmin,xmax , m_pulados:={} , a
Str:="select Min("+xcampo+"),Max( "+xcampo+") from "+xtabela+";" // vefifico a faixa de pesquisa
fb_executa() // -é a minha rotina que executa o str e retorna matriz m_select, verifique a sua
xmin:=m_select[1,1]
xmax:= m_select[1,2]
for a:= val(xmin) to val(xmax)
// strzero, porque só trablho com numeros completos do tipo "00001"
str:="select first 1 "+xcampo+" from "+xtabela + " where "+xcampo+" = '"+ strzero(a,len(xmin)) +"';"
fb_executa()
if empty( m_select)
aadd(m_pulados,strzero(a,len(xmin) ) )
endif
next
msginfo( str(len(m_pulados),5) +" registros pulados")
retu m_pulados
Poka