Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ecos

Trazer Resultado Oposto

Recommended Posts

Galera!

Tenho Duas Tabelas...

 

TblFormulario

TblDtlFormulario

 

Na primeira tabela tem o campo:

CodForm

Que é o único que me importa.

 

E a segunda tabela tem os campos:

CodFuncionario

CodForm - FK da tabela TblFormulario.

 

Eu estou cadastrando permissões de funcionários para os formulários.

Estou querendo trazer num ListBox todos os formulários que ainda NÃO foram dados permissões para o funcionário que eu escolher no ListBox de cima.

 

Eu consigo trazer os que ele TEM permissão, mas não os que ele NÃO TEM.

 

ComoFas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

select tbldtlformulario.codform, descricaoform from tbldtlformulario inner join tblformulario on tblformulario.codform = tbldtlformulario.codform where tblformulario.codform = tbldtlformulario.codform and codfuncionario = 1

Será que pode colocar o código do funcionário como condição ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente com outer join e testando nulo.

 

select tbldtlformulario.codform, descricaoform 
from tbldtlformulario 
outer join tblformulario on tblformulario.codform = tbldtlformulario.codform where 
tblformulario.codform = tbldtlformulario.codform 
and codfuncionario = 1
and tblformulario.codform is null

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deu certo...

Eu tentei de outra forma:

select 
	tblformulario.codform,
	descricaoform 
from 
	tblformulario, tbldtlformulario
where
	tblformulario.codform not in(select codform from tbldtlformulario)
and
	tbldtlformulario.codfuncionario = 256
group by
	tblformulario.codform,
	descricaoform

Eu consigo trazer o que não tem! Mas por exemplo, se eu tiver um funcionário que não tenha acesso a nenhum não vai ter registro na tabela... então ele não traz nada... aí que era para trazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

not exists

 

select tbldtlformulario.codform, descricaoform 
from tbldtlformulario 
where codfuncionario = 1
and not exists (select null
                from tblformulario 
                where tblformulario.codform = tbldtlformulario.codform)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.