Fórum Select com IN firebird 3.0 não retorna registros #601547
01/04/2019
0
tenho uma tabela chamada PESSOAS onde tenho um campo chamado PES_PAPEL VARCHAR(10) onde salvo alguns valores que são chave primaria da tabela PAPEIS.
No campo PES_PAPEL tenho seguinte registro: 0,1,4,5
Na tabela PAPEIS tenho os seguintes registros:
PAS_ID PAS_DESCRICAO
0 Cliente
1 Fornecedor
2 Colaborador
3 Tecnico
4 Representante
5 Prestador de Serviços
Quando faço o select com IN ele não trás os dados da coluna PAS_DESCRICAO.
select
pessoas.pes_papel,
(select list( papeis.pas_descricao,'','') from papeis where cast(papeis.pas_id as varchar(2)) in(pessoas.pes_papel))
from pessoas
Sidney Abreu
Curtir tópico
+ 0Posts
01/04/2019
Menguelly Costa
tenho uma tabela chamada PESSOAS onde tenho um campo chamado PES_PAPEL VARCHAR(10) onde salvo alguns valores que são chave primaria da tabela PAPEIS.
No campo PES_PAPEL tenho seguinte registro: 0,1,4,5
Na tabela PAPEIS tenho os seguintes registros:
PAS_ID PAS_DESCRICAO
0 Cliente
1 Fornecedor
2 Colaborador
3 Tecnico
4 Representante
5 Prestador de Serviços
Quando faço o select com IN ele não trás os dados da coluna PAS_DESCRICAO.
select
pessoas.pes_papel,
(select list( papeis.pas_descricao,'','') from papeis where cast(papeis.pas_id as varchar(2)) in(pessoas.pes_papel))
from pessoas
Mas função 'in' voce coloca quando vai fazer mais de um filtro ex: pes_papel in ( 1,2) neste caso pelo que entendi esta direto.
Já tentou colocar "and"
Gostei + 0
01/04/2019
Sidney Abreu
tenho uma tabela chamada PESSOAS onde tenho um campo chamado PES_PAPEL VARCHAR(10) onde salvo alguns valores que são chave primaria da tabela PAPEIS.
No campo PES_PAPEL tenho seguinte registro: 0,1,4,5
Na tabela PAPEIS tenho os seguintes registros:
PAS_ID PAS_DESCRICAO
0 Cliente
1 Fornecedor
2 Colaborador
3 Tecnico
4 Representante
5 Prestador de Serviços
Quando faço o select com IN ele não trás os dados da coluna PAS_DESCRICAO.
select
pessoas.pes_papel,
(select list( papeis.pas_descricao,'','') from papeis where cast(papeis.pas_id as varchar(2)) in(pessoas.pes_papel))
from pessoas
Mas função 'in' voce coloca quando vai fazer mais de um filtro ex: pes_papel in ( 1,2) neste caso pelo que entendi esta direto.
Já tentou colocar "and"
A expressão IN acredito que seja a mais recomendada, e o AND não fica dinâmico, fica estático
Gostei + 0
02/04/2019
Ricardo Diniz
Tente utilizar o EXISTS.
At,
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)