Case e concatenação no SQL - Ajuste de ordem ou posição na tabela

Publicado por Diego em 16/11/2015

[ Hits: 4.943 ]

Blog: https://rotadev.blogspot.com/

 


Case e concatenação no SQL - Ajuste de ordem ou posição na tabela



Recentemente verifiquei numa base de dados que o código dos lançamentos iniciava-se em 2 ao invés de 1.

O código para ajuste poderia ser feito de outra maneira, inclusive as condições poderiam estar na cláusula WHERE, entretanto, resolvi fazer utilizando o comando CASE e utilizando CONCATENAÇÃO.

O comando CASE permite que as condições sejam testadas no momento da seleção dos dados.

No exemplo abaixo estou pedindo para selecionar todos os códigos da tabela LANCTO, na sequência é verificado todos os códigos maiores ou igual a 2 e decrementado -1 (menos um), a concatenação é realizada através do operador || (duplo pipe):

select distinct(codigo), case when codigo >=2 then 'update lancto set codigo = '|| sum(codigo-1) ||' where codigo = '|| codigo end "Código gerado para ajuste"
from LANCTO
group by 1

Obrigatoriamente o comando CASE deve ser finalizando com o comando END, após o comando pode ser descrito o nome da coluna para exibição dos resultados.

Lembrando que deve estar entre aspas duplas, no exemplo acima nomeei a coluna como "Código gerado para ajuste".

Para cada cláusula WHEN pode ser utilizado o comando ELSE (opcional) para testar condições específicas para cada situação.

Outras dicas deste autor

Formatos de vídeo na WEB

Configurando o charset de suas páginas Web

Configuração de Impressoras no Linux

PHP - Utilizando Chainning

Firebird - Como localizar GENERATORS de uma tabela

Leitura recomendada

Contador de linhas em consultas SQL

Editora Pearson lança este mês Ajax em ação

Adicionando campos de arquivo csv em componente do lazarus

Informix, administração básica

Exportar banco de dados SQLite para arquivo .sql

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts