Mostrando postagens com marcador SQL. Mostrar todas as postagens
Mostrando postagens com marcador SQL. Mostrar todas as postagens

segunda-feira, 3 de maio de 2021

Falha Sequência Numérica

Já precisou descobrir se uma sequência está com falha, ou seja, faltando algum número em uma sequência?


Ex.: 1,2,3,5,6,7.


Nesse caso o número 4!


Segue exemplo SQL:


with controle as (

SELECT MEU_CAMPO_INTEIRO FROM TB_MINHA_TABELA


union all


SELECT MEU_CAMPO_INTEIRO + 1 FROM TB_MINHA_TABELA)


select MEU_CAMPO_INTEIRO from controle

where MEU_CAMPO_INTEIRO <= (SELECT MAX(MEU_CAMPO_INTEIRO) FROM TB_MINHA_TABELA) and

(SELECT B.MEU_CAMPO_INTEIRO FROM TB_MINHA_TABELA B

WHERE B.MEU_CAMPO_INTEIRO = controle.MEU_CAMPO_INTEIRO) IS NULL

group by MEU_CAMPO_INTEIRO

quarta-feira, 21 de abril de 2021

Like X Starting

Se você estiver precisando de performance utilize starting, isso se o campo ao qual for aplicado o filtro possuir índice, like '%' não utiliza índice ao contrário do starting,  porém essa sugestão só possui relevância em grandes consultas.


Exemplo de select para retornar todos os registros que determinado campo inicie com letra 'A'.

Like:

SELECT * FROM MINHA_TABELA
WHERE MEU_CAMPO LIKE 'A%'

Starting:

SELECT * FROM MINHA_TABELA
WHERE MEU_CAMPO starting 'A'

sexta-feira, 9 de abril de 2010

SELECT - SEMANA DO MÊS

Pessoal seque select que retorna em que semana no mês está determinada data.

select (extract(day from cast(:dia as date)) +
(extract(weekday from cast(extract(month from cast(:dia as date)) ||'/01/'|| extract(year from cast(:dia as date)) as date)) - 1)) / 7 + 1 as semana
from rdb$database

  © Blogger template 'Perfection' by Ourblogtemplates.com 2008

Back to TOP