Definindo tamanho e tipo de dados em uma sql - UNION

Firebird

21/06/2004

Bom dia pessoal.
Uso Firebird 1.5 e Delphi 7. Meu problemas é o seguinte :
1) Estou fazendo um Union entre campos de duas tabelas. O problema é que no campo string de uma das tabelas tenho 250 posições e no equivalente da outra tenho 100 posições. Já tentei usar o comando SUBSTRING(CAMPO FROM X FOR Y), só que isto só faz um copy da string e nao redimenciona o tamanho do meu campo na sql de forma a ficar compativel com o campo da outra tabela. Tem alguma solução para isto ?
2) Um dos campos de uma tabela é o tipo integer e na outra Smallint. Tem como eu refinir na sql o tipo de uma das tabelas de foma a torna-los compativeis ?

Se alguém puder me ajudar fico muito grato

Obrigado
andre130977@hotmail.com
Analista/Programador


Andreehrig

Andreehrig

Curtidas 0

Respostas

Afarias

Afarias

21/06/2004

CAST!


select campo_V250, campo_integer from tabela1
UNION
select cast(campo_V100 as VARCHAR(250)), cast(campo_smallint as INTEGER) from tabela2



T+


GOSTEI 0
Andreehrig

Andreehrig

21/06/2004

Muito Obrigado, deu certo !
Valeuuuuuuuuuuuuuu !!!!!!!!!


GOSTEI 0
POSTAR