[firebase-br] Data type unknown (Em um select utilizando UNION)
HPensador
hpensador em gmail.com
Sex Ago 24 15:49:57 -03 2007
Boa tarde Colegas!
Quando tento executar a consulta abaixo recebo a msg de erro - Data
type unknown.
Obs: todos os campos envolvidos são do tipo Varchar();
select (div.cod_secretaria) as master_field,
('00') as detail_field,
sec.nome
from divisao div
join secretaria sec on (sec.cod_secretaria = div.cod_secretaria)
union
select (div.cod_secretaria || div.cod_departamento) as master_field,
(div.cod_secretaria) as detail_field,
dep.nome
from divisao div
join departamento dep on (dep.cod_secretaria = div.cod_secretaria
and dep.cod_departamento =
div.cod_departamento)
union
select (div.cod_secretaria || div.cod_departamento || div.cod_divisao)
as master_field,
(div.cod_secretaria || div.cod_departamento) as detail_field,
div.nome
from divisao div
order by 1, 2, 3
Porém se executo o mesmo fazendo um CAST dos dados, funciona
normalmente. vide abaixo:
select cast(div.cod_secretaria as integer) as master_field,
cast(null as integer) as detail_field,
sec.nome
from divisao div
join secretaria sec on (sec.cod_secretaria = div.cod_secretaria)
union
select cast(div.cod_secretaria || div.cod_departamento as integer) as
master_field,
cast(div.cod_secretaria as integer) as detail_field,
dep.nome
from divisao div
join departamento dep on (dep.cod_secretaria = div.cod_secretaria
and dep.cod_departamento =
div.cod_departamento)
union
select cast(div.cod_secretaria || div.cod_departamento ||
div.cod_divisao as integer) as master_field,
cast(div.cod_secretaria || div.cod_departamento as integer) as
detail_field,
div.nome
from divisao div
order by 1, 2, 3
--
Mais detalhes sobre a lista de discussão lista