[firebase-br] Erro ao usar query com UNION

Ivan Guimarães Meirelles igmeirelles em gmail.com
Qui Nov 9 17:48:43 -03 2006


Vamos supor que os campos

CodigoContabil seja Integer
DescricaoConta seja Varchar(50)
TipoConta seja Varchar(15)
ContaRedutora seja Integer
IDContaTitulo seja Integer
ParticipaResultado seja Decimal(15,2)

Faça assim...

Select 
    Cast(CodigoContabil as Integer), 
    Cast(DescricaoConta as varchar(50)), 
    Cast(TipoConta as Varchar(15)), 
    Cast(ContaRedutora as Integer), 
    Cast(IDContaTitulo as Integer), 
    Cast(ParticipaResultado as Decimal(15,2)) 
from TBPlanoConta 

Union 

Select 
    Cast(CodigoContabil as Integer), 
    Cast(DescricaoConta as varchar(50)), 
    Cast(TipoConta as Varchar(15)), 
    Cast(ContaRedutora as Integer), 
    Cast(IDContaTitulo as Integer), 
    Cast(ParticipaResultado as Decimal(15,2)) 
from TBContaTitulo 

Order By 1;


Observe que é necessário que os campos em ambas as tabelas sejam de mesmo
tipo e tamanho...
Só utilizei o Cast para me assegurar de que essa regra seja observada...



-----Original Message-----
From: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br]
On Behalf Of Welson Avelar
Sent: quinta-feira, 9 de novembro de 2006 15:43
To: FirebaseBR
Subject: [firebase-br] Erro ao usar query com UNION

Fala povo, na paz !? Espero que sim...

Bom, eu estou precisando concatenar dois selects, usando a seguinte SQL:

Select CodigoContabil, DescricaoConta, TipoConta, ContaRedutora,
IDContaTitulo, ParticipaResultado from TBPlanoConta Union Select
CodigoContabil, DescricaoConta, TipoConta, ContaRedutora, IDContaTitulo,
ParticipaResultado from TBContaTitulo Order By CodigoContabil

...mas insistentemente me retorna a mensagem:

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
Data type unknown.

Por "token invalid", entendo que possa ser nome errado de coluna ou algum
caracter incorreto na SQL, mas não tem nada de errado com o nome das
colunas.
Por "data type unknown" eu penso que as colunas dos selects devam ser do
mesmo tipo e inclusive na mesma ordem. Mas uma idéia me veio a cabeça: UNION
pode ser usado em caso de ambas tabelas estarem completamente vazias !?
Porque essa é a situação inicial do sistema.

Obrigado pela atenção, um abraço.

=================================
'O que me preocupa não é o grito dos maus. É o silêncio dos bons.'
Martin Luther King.
=================================
Welson de Avelar Soares Filho
Analista/Programador Delphi
Gemini Sistemas
www.geminisistemas.com.br
Juiz de Fora - Minas Gerais
=================================


		
_______________________________________________________
O Yahoo! está de cara nova. Venha conferir! 
http://br.yahoo.com

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista