Conctenaçao de campos
Olá a todos,
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa - 12,00
Fulano abababababababa - 12,00
Fulano ab - 12,00
Alguem tem alguma solucao ?
Obrigado.
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa - 12,00
Fulano abababababababa - 12,00
Fulano ab - 12,00
Alguem tem alguma solucao ?
Obrigado.
Angelo Zagatti
Curtidas 0
Respostas
Angelo Zagatti
19/04/2012
Olá a todos,
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa - 12,00
Fulano abababababababa - 12,00
Fulano ab - 12,00
Alguem tem alguma solucao ?
Obrigado.
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa - 12,00
Fulano abababababababa - 12,00
Fulano ab - 12,00
Alguem tem alguma solucao ?
Obrigado.
por algum motivo o post está desconfigurado
Preciso que saia assim:
Nome Valor
Fulano aaaaaaa - 12,00
Fulano abababababababa - 12,00
Fulano ab - 12,00
GOSTEI 0
Angelo Zagatti
19/04/2012
Olá a todos,
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa..............................................12,00
Fulano abababababababa................................12,00
Fulano ab.......................................................12,00
Alguem tem alguma solucao ?
Obrigado.
Preciso concatenar alguns campos de uma tabela, e alinha-los.
Ex:
Select Nome || - || Saldo From Clientes
O resultado do select acima me mostra:
Fulano aaaaaaa-12,00
Fulano abababababababa-12,00
Fulano ab-12,00
Preciso que saia assim:
Fulano aaaaaaa..............................................12,00
Fulano abababababababa................................12,00
Fulano ab.......................................................12,00
Alguem tem alguma solucao ?
Obrigado.
por algum motivo o post está desconfigurado
Preciso que saia assim:
Nome Valor
Fulano aaaaaaa..............................................12,00
Fulano abababababababa................................12,00
Fulano ab.......................................................12,00
GOSTEI 0
Joel Rodrigues
19/04/2012
Talvez você esteja tendo um erro de conversão, selecione o Saldo como texto usando ;
Boa sorte.
CAST(Saldo AS VARCHAR) AS Saldo
Boa sorte.
GOSTEI 0
Joel Rodrigues
19/04/2012
Acho que você vai fazer algo assim:
Onde REPLICATE é uma função que repete um determinado caracter várias vezes. No caso, eu repliquei o ponto (.) uma quantidade de caracteres igual a 50 - o comprimento do nome, para padronizar em 50 caracteres antes do valor.
Não sei se existe a função REPLICATE em Firebird, se não existir, você dá um jeito de encontrar uma.
Boa sorte.
SELECT Nome||REPLICATE(´.´, 50-CHAR_LENGTH(NOME))||CAST(Saldo AS VARCHAR) AS Saldo
Onde REPLICATE é uma função que repete um determinado caracter várias vezes. No caso, eu repliquei o ponto (.) uma quantidade de caracteres igual a 50 - o comprimento do nome, para padronizar em 50 caracteres antes do valor.
Não sei se existe a função REPLICATE em Firebird, se não existir, você dá um jeito de encontrar uma.
Boa sorte.
GOSTEI 0
Angelo Zagatti
19/04/2012
Joel, obrigado pela ajuda, mas nao encontrei a funcao replicate() no firebird.
Tambem nao sei como fazer uma udf e nao achei nada na net.
Caso vc tenha alguma sugestao, eu agradeço.
Abraços,
Tambem nao sei como fazer uma udf e nao achei nada na net.
Caso vc tenha alguma sugestao, eu agradeço.
Abraços,
GOSTEI 0
Joel Rodrigues
19/04/2012
Dá uma olhada nesses dois links, talvez te ajudem. No momento não vou nem poder te ajudar muito, pois faz muito tempo que não uso Firebird e, quando usei, nunca fui tão fundo.
http://www.firebase.com.br/fb/downloads.php?categ=6
http://gustavohenriquephn.wordpress.com/2008/04/17/utilizando-udf-no-firebird/
A ideia da função é
Deu pra sacar?
http://www.firebase.com.br/fb/downloads.php?categ=6
http://gustavohenriquephn.wordpress.com/2008/04/17/utilizando-udf-no-firebird/
A ideia da função é
ENTRADA: CARACTER:TEXTO, QUANTIDADE:INTEIRO; SAÍDA RESULTADO:TEXTO; VARIÁVEIS I:INTEIRO; INÍCIO RESULTADO = ´´; PARA I DE 0 ATÉ QUANTIDADE RESULTADO = RESULTADO + CARACTER; FIM
Deu pra sacar?
GOSTEI 0
Joel Rodrigues
19/04/2012
Em ÚLTIMO CASO, tenta criar um Stored Procedure que faça a mesma coisa.
GOSTEI 0
Emerson Nascimento
19/04/2012
Select (Nome as char(30)) || ` - ´ || Saldo From Clientes
GOSTEI 0
Angelo Zagatti
19/04/2012
Achei um UDF que replica um caracter.
Vou fazer mais testes.
Obrigado a todos pela ajuda.
Vou fazer mais testes.
Obrigado a todos pela ajuda.
GOSTEI 0