SuporteHSL Postado Julho 19, 2014 Denunciar Share Postado Julho 19, 2014 (editado) Já fiz várias tentativas mas não consegui, tentarei explicar... Tabela: Funcionarios (todos os funcionários) CodFunc, NomeFunc, CodSetor Tabela: Setores (são os setores da empresa) CodSetor, DescrSetor Tabela: PontoGestao (regra de permissão para os pontos, inclui o funcionário e setor que fará a gerenciamento) CodGestor(seria o código do funcionários gestor), CodSetor Tabela: PontoGestaoNeg (são os funcionários que o gestor não pode ver, mesmo estando dentro dos setores liberados) CodGestor, CodFuncNeg(funcionário que não poderia ver) Fiz os Inner join entre as tabelas, porém não sei como usar a Where para que os funcionários da tabela PontoGestaoNeg sejam exclusos da consulta. Espero que possam me entender. Editado Julho 24, 2014 por SuporteHSL Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Julho 19, 2014 Denunciar Share Postado Julho 19, 2014 WHERE NOT funcionários IN (SELECT DISTINCT IDFUNCIONARIOPontoGestaoNeg FROM PontoGestaoNeg) Link para o comentário Compartilhar em outros sites More sharing options...
0 SuporteHSL Postado Julho 21, 2014 Autor Denunciar Share Postado Julho 21, 2014 (editado) Denis, acabei tendo que mudar os nomes das tabelas... Tab: Colaboradores codigo, nome Tab: Bio_bhGes GesCod (seria o gestor), SetorCod (setores permitidos) Tab: Bio_bhGesNeg GesCod, ColCod (colaboradores que não devem ser visualizados) Minha Consulta ficou assim: I - Visualizar os vinculados ao setor SELECT bhges.*, col.codigo, col.nome FROM bio_bhges as bhges inner join colaboradores as col on col.codsetor=bhges.setorcod where bhges.gescod=654 Retorna 14 registros (todos do setor 103) II - Visualizar os regados a mim select distinct codigo from bio_bhgesneg where gescod=654 Retorna 1 registro (o que não posso visualizar) III - Agora se eu juntar exibindo os que compõem o setor exceto os negados. SELECT bhges.*, col.codigo, col.nome FROM bio_bhges as bhges inner join colaboradores as col on col.codsetor=bhges.setorcod where bhges.gescod=654 and not col.codigo in (select distinct codigo from bio_bhgesneg where gescod=654) Nenhum registro retornado, teria que retornar 13 (14 total - 1 negado) Editado Julho 21, 2014 por SuporteHSL Link para o comentário Compartilhar em outros sites More sharing options...
0 Markus Magnus Postado Julho 21, 2014 Denunciar Share Postado Julho 21, 2014 Ehh... não seria: SELECT bhges.*, col.codigo, col.nome FROM bio_bhges as bhges inner join colaboradores as col on col.codsetor=bhges.setorcod where bhges.gescod=654 and col.codigo NOT IN (select distinct codigo from bio_bhgesneg where gescod=654) o NOT depois do nome do campo? Link para o comentário Compartilhar em outros sites More sharing options...
0 SuporteHSL Postado Julho 24, 2014 Autor Denunciar Share Postado Julho 24, 2014 Markus havia apenas um erro no nome do campo da segunda select, de codigo para colcod SELECT bhges.*, col.codigo, col.nome FROM bio_bhges as bhges inner join colaboradores as col on col.codsetor=bhges.setorcod where bhges.gescod=654 and col.codigo NOT IN (select distinct ColCod from bio_bhgesneg where gescod=654) Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
SuporteHSL
Já fiz várias tentativas mas não consegui, tentarei explicar...
Tabela: Funcionarios (todos os funcionários)
CodFunc, NomeFunc, CodSetor
Tabela: Setores (são os setores da empresa)
CodSetor, DescrSetor
Tabela: PontoGestao (regra de permissão para os pontos, inclui o funcionário e setor que fará a gerenciamento)
CodGestor(seria o código do funcionários gestor), CodSetor
Tabela: PontoGestaoNeg (são os funcionários que o gestor não pode ver, mesmo estando dentro dos setores liberados)
CodGestor, CodFuncNeg(funcionário que não poderia ver)
Fiz os Inner join entre as tabelas, porém não sei como usar a Where para que os funcionários da tabela PontoGestaoNeg sejam exclusos da consulta.
Espero que possam me entender.
Editado por SuporteHSLLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados