[firebase-br] Problema com select
Pablo Cunha
cunhapablo em yahoo.com.br
Seg Ago 7 08:45:57 -03 2006
Vê alguem pode me ajudar, eu tenho esse select que está ai embaixo, é o seguinte, eu tenho na tabela de endereço a descrição de cada endereço, que nada mais é que ele todo escrito.
Note que o select abaixo está divido em dois selects, o primeiro está utilizando o Like para que assim ele possa me retornar todos os endereços que iniciam com um determinado caractér, e esse determinado caractér é retornado no segundo select, só que esse segundo select tem vezes que ele pode retornar 1 registro ou mais registros, e o que acontece, quando ele retorna 2 registros ele não consegue fazer o select (o conjunto dos dois) porque ele dá a seguinte mensagem: "multiple rows in singleton select" ai eu coloco o First 1 para que ele me retorna apenas 1 registro e ai funciona agora se eu tiro o First 1 ele vai me retornar mais de um registro ai ele dá a mensagem. Resumindo: no primeiro select ele quer pegar todos os que iniciam com a letra que o segundo select retornou, só que se o segundo select retorna mais de 2 registro dá problema. Como eu poderia resolver isso?
Select e3.id_end, e3.nm_descricao_end
from endereco e3
where e3.nm_descricao_end like
(SELECT
first 1 e.NM_DESCRICAO_END
FROM
produto_class_produto pcp,
endereco_class_endereco ece,
classifica_produto_end cpe,
endereco e
WHERE pcp.id_class_produto = cpe.id_class_produto
and cpe.id_class_end = ece.id_class_end
and ece.id_end = e.id_end
and pcp.id_produto = 8
and (pcp.cd_modalidade_class = 1 or pcp.cd_modalidade_class = 2)) || '%'
Mais detalhes sobre a lista de discussão lista