EMSO.EXE 0 Denunciar post Postado Fevereiro 17, 2015 Jovens! Estou montando um sistema simples que trabalha com 2 tabelas tb_colaboradores e tb_setor_cargo. tb_colaboradores cd_matricula....nm_nome....cd_codigo 1001................Bruce.............003 1002................Clark..............003 1003................Diana.............004 1004................Barry..............004 1005................Hal.................005 A coluna cd_codigo é a referência ao cargo do funcionário. tb_setor_cargo cd_codigo....cd_setor_cargo.....ds_setor_cargo 001................999......................informatica 002................999......................atendimento 003................001......................aux de informatica 004................002......................aux de atendimento 005................001......................programador A coluna cd_codigo "individualiza" cada setor e cargo. A coluna cd_setor_cargo com valor 999 define que trata-se de um setor A coluna cd_setor_cargo com valor 001 define que trata-se de um cargo que pertence ao setor 001 (cd_codigo) Agora estou tentando exibir as informações em uma página em PHP, até este ponto está ok, consigo exibir matrícula, nome, cargo, porém não consigo exibir a descrição do setor, consigo exibir somente a código do setor. SELECT * FROM tb_colaboradores AS c INNER JOIN tb_setor_cargo AS a ON c.cd_codigo = a.cd_codigo INNER JOIN tb_setor_cargo AS b ON a.cd_codigo = b.cd_codigo ORDER BY nm_nome; Acredito que o problema esteja no 2 INNER JOIN pois este não faz diferença de estar ou não no código. Alguém pode demonstrar se é possível fazer essa exibição dos registros? Agradeço Compartilhar este post Link para o post Compartilhar em outros sites
itlpps 109 Denunciar post Postado Fevereiro 18, 2015 Operadores lógicos ao invés de JOIN, talvez O.o Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Fevereiro 18, 2015 Nao entendi o motivo de dois "joins". Compartilhar este post Link para o post Compartilhar em outros sites
EMSO.EXE 0 Denunciar post Postado Fevereiro 18, 2015 O 1º join é para exibir o cargo e o 2º era uma tentativa de exibir o setor, tanto cargo e setor estão na mesma tabela tb_setor_cargo cd_codigo....cd_setor_cargo.....ds_setor_cargo 001................999......................informatica 002................999......................atendimento 003................001......................aux de informatica 004................002......................aux de atendimento 005................001......................programador Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Fevereiro 18, 2015 Não precisaria , já estaria selecionado , só exibir Compartilhar este post Link para o post Compartilhar em outros sites
Fernando C 128 Denunciar post Postado Fevereiro 19, 2015 1. crie uma tabela para cargos, outra p/ departamentos; 2. na tabela de funcionarios, crie uma coluna p/ cada 1 dessas 2 tabelas acima. dicas sobre joins: http://www.devmedia.com.br/utilizando-joins-em-sql/1071 estude modelagem; departamentos pertencem à entidade "empresa"; (e até ao contrario, 1 funcionario "pertence" a 1 departamento, não o inverso). já cargos normalmente são atributos do funcionário (entidades distintas, portanto). correção: onde se lê "entidade "empresa";" por gentileza considerar "sistema "empresa";" Compartilhar este post Link para o post Compartilhar em outros sites