Concatenação com alinhamento SQL

Firebird

01/10/2004

Tenho um SQL que concatena valores, com determinado tamanho, só que gostaria de alinhar à direita os dois últimos campos.
Alguém tem idéia de como fazer isso, se é possível?
Obs: Trabalho com o IB6, mas se a solução for padrão ANSI melhor.

Ex:
campo1 = ´111´
campo2 = ´222´
campo3 = ´3´

select cast(campo1 as char(5)) || cast(campo2 as char(4)) ||
cast(campo3 as char(3)) from tabela

com esse SQL o resultado é: ´111..222.3..´
e gostaria que fosse: ´111...222..3´

onde ´.´ é um espaço vazio


Drf

Drf

Curtidas 0

Respostas

Drf

Drf

01/10/2004

Lembrei de uma coisa...talvez um comando para pegar o tamanho do campo, então definir uma fórmula para concatenação:

select cast(campo1 as char(5)) || cast(´´ as char([i][b]length[/b][/i](campo2))) ||
campo2 || cast(´´ as char([i][b]length[/b][/i](campo3))) || campo3
from tabela

Alguém conhece um comando que tenha essa função?


GOSTEI 0
POSTAR