Procurar
Tópicos semelhantes
Últimos assuntos
Consulta SQL
4 participantes
Página 1 de 1
Consulta SQL
Bom dia amigos!
Venho pedir a ajuda de vocês para resolver um problema...
É o seguinte preciso fazer uma consulta no banco que me retorne as seguintes informações:
Coligada
Nome
Situação
CPF
data admissão
data demissão
sexo
previdencia
O detalhe é que não possuo conhecimentos suficientes em SQL para tal consulta, qualquer ajuda será bem vinda.
Abraço a todos
Paulo Ferreira
Venho pedir a ajuda de vocês para resolver um problema...
É o seguinte preciso fazer uma consulta no banco que me retorne as seguintes informações:
Coligada
Nome
Situação
CPF
data admissão
data demissão
sexo
previdencia
O detalhe é que não possuo conhecimentos suficientes em SQL para tal consulta, qualquer ajuda será bem vinda.
Abraço a todos
Paulo Ferreira
paulo.ferreira_rj- Mensagens : 7
Pontos : 11
Data de inscrição : 21/03/2011
Re: Consulta SQL
Caros colegas, estou precisando dessas informações desesperadamente, quem puder ajudar serei muito grato. Pesquisando fuçando um pouco consegui chegar no seguinte código:
SELECT DISTINCT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC
LEFT OUTER JOIN GCOLIGADA
ON
(((GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA)))
WHERE GCOLIGADA.CODCOLIGADA =PLN_$B$1_N and
PFUNC.CODSITUACAO =PLN_$B$2_S ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
Nas opções em vermelho é que não entendi muito bem e que está retornando erro...
Agradeço desde já!
SELECT DISTINCT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC
LEFT OUTER JOIN GCOLIGADA
ON
(((GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA)))
WHERE GCOLIGADA.CODCOLIGADA =PLN_$B$1_N and
PFUNC.CODSITUACAO =PLN_$B$2_S ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
Nas opções em vermelho é que não entendi muito bem e que está retornando erro...
Agradeço desde já!
paulo.ferreira_rj- Mensagens : 7
Pontos : 11
Data de inscrição : 21/03/2011
Re: Consulta SQL
Parceiro, esta sentença que você pegou, faz parte de uma sentença utilizada em uma planilha. Esta parte em vermelho é um parâmetro que diz o seguinte:
pln_$b$1_n => NA PLAINLHA, COLUNA B, LINHA 1, terá os dados para esta sentença buscar a COLIGADA.
A outra indica que na coluna B linha 2, a sentença irá buscar o código da situação.
Você irá utilizar esta sentença em um relatório ou direto no banco? Se for direto no banco, basta você substituir os valores em vermelho pelo código da coligada e pelo codigo da situaçao:
SELECT DISTINCT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC
LEFT OUTER JOIN GCOLIGADA
ON
(((GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA)))
WHERE GCOLIGADA.CODCOLIGADA =1 and
PFUNC.CODSITUACAO =5 ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
pln_$b$1_n => NA PLAINLHA, COLUNA B, LINHA 1, terá os dados para esta sentença buscar a COLIGADA.
A outra indica que na coluna B linha 2, a sentença irá buscar o código da situação.
Você irá utilizar esta sentença em um relatório ou direto no banco? Se for direto no banco, basta você substituir os valores em vermelho pelo código da coligada e pelo codigo da situaçao:
SELECT DISTINCT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC
LEFT OUTER JOIN GCOLIGADA
ON
(((GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA)))
WHERE GCOLIGADA.CODCOLIGADA =1 and
PFUNC.CODSITUACAO =5 ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
Re: Consulta SQL
Vou utilizar no banco mesmo, o que precisava era que pegasse todas as coligadas...
paulo.ferreira_rj- Mensagens : 7
Pontos : 11
Data de inscrição : 21/03/2011
Re: Consulta SQL
paulo.ferreira_rj escreveu:Vou utilizar no banco mesmo, o que precisava era que pegasse todas as coligadas...
Prezados amigos,
Fiz estes comandos sql só que o mesmo tras varias vezes o mesmo funcionário... Poderiam me ajudar estou muito precisando resolver isso...
SELECT DISTINCT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC
LEFT OUTER JOIN GCOLIGADA
ON
(((GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA)))
WHERE GCOLIGADA.CODCOLIGADA = 001 and
PFUNC.CODSITUACAO = 'A'
ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
paulo.ferreira_rj- Mensagens : 7
Pontos : 11
Data de inscrição : 21/03/2011
Re: Consulta SQL
Segue abaixo as informações que estou querendo juntar
Nome, Situação, Empresa, Data admissão, CPF, Data de nascimento.
Me ajudem por favor!
Abraços
Nome, Situação, Empresa, Data admissão, CPF, Data de nascimento.
Me ajudem por favor!
Abraços
paulo.ferreira_rj- Mensagens : 7
Pontos : 11
Data de inscrição : 21/03/2011
Re: Consulta SQL
Paulo, dei uma limpada na sentença para que fique de fácil entendimento. Veja se agora ela lhe atende:
SELECT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC, GCOLIGADA
WHERE
GCOLIGADA.CODCOLIGADA=PFUNC.CODCOLIGADA
AND PFUNC.CODSITUACAO = 'A'
AND PFUNC.CODPESSOA=PPESSOA.CODIGO
ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
Rodei na base exemplo e funcionou direitinho. Tirei o Gcoligada.CodColigada=, porque você disse que precisava que trouxesse todas as coligadas, correto?
SELECT PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
FROM PPESSOA,PFUNC, GCOLIGADA
WHERE
GCOLIGADA.CODCOLIGADA=PFUNC.CODCOLIGADA
AND PFUNC.CODSITUACAO = 'A'
AND PFUNC.CODPESSOA=PPESSOA.CODIGO
ORDER BY PFUNC.NOME, PFUNC.CODSITUACAO,GCOLIGADA.NOME,PPESSOA.CPF,PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,PPESSOA.SEXO,PPESSOA.DTNASCIMENTO,GCOLIGADA.CODCOLIGADA
Rodei na base exemplo e funcionou direitinho. Tirei o Gcoligada.CodColigada=, porque você disse que precisava que trouxesse todas as coligadas, correto?
Re: Consulta SQL
Olá pessoal
Este tópico é velho pra caramba mas, apenas para contribuir com aqueles que gostam um pouco mais de SQL...
O select que já estava aqui não está errado, na verdade só listei a mesma coisa utilizando um padrão um pouquinho diferente
Então fiz o seguinte:
Concatenei o código - Alinhei os campo de forma que a fisualização da sentença fique mais agradável aos olhos e também facilite uma futura manutenção.
Utilizei o JOIN para vincular as tabelas - Assim é possível definir mais condições para este vinculo.
Também coloquei o parâmetro NOLOCK nas tablema - Com este parâmetro é possível listar dados mesmo que o registro esteja preso em uma transação.
Por fim, alterei o parâmetro PFUNC.CODSITUACAO = 'A' para PFUNC.CODSITUACAO <> 'D' - Com a letra "A" é possível listar todos os colaboradores ativos mas, não serão listados por exemplo os que estão de férias, lilcença pelo INSS, Licença Maternidade, etc...
SELECT
PFUNC.NOME,
PFUNC.CODSITUACAO,
GCOLIGADA.NOME,
PPESSOA.CPF,
PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,
PPESSOA.SEXO,
PPESSOA.DTNASCIMENTO,
GCOLIGADA.CODCOLIGADA
FROM
PPESSOA (NOLOCK)
INNER JOIN PFUNC(NOLOCK)
ON
PPESSOA.CODIGO = PFUNC.CODPESSOA
INNER JOIN GCOLIGADA (NOLOCK)
ON
GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA
WHERE
PFUNC.CODSITUACAO <> '(D)'
ORDER BY
PFUNC.NOME,
PFUNC.CODSITUACAO,
GCOLIGADA.NOME,
PPESSOA.CPF,
PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,
PPESSOA.SEXO,
PPESSOA.DTNASCIMENTO,
GCOLIGADA.CODCOLIGADA
É isso aí pessoal, espero ter contrinuído com alguém
Este tópico é velho pra caramba mas, apenas para contribuir com aqueles que gostam um pouco mais de SQL...
O select que já estava aqui não está errado, na verdade só listei a mesma coisa utilizando um padrão um pouquinho diferente
Então fiz o seguinte:
Concatenei o código - Alinhei os campo de forma que a fisualização da sentença fique mais agradável aos olhos e também facilite uma futura manutenção.
Utilizei o JOIN para vincular as tabelas - Assim é possível definir mais condições para este vinculo.
Também coloquei o parâmetro NOLOCK nas tablema - Com este parâmetro é possível listar dados mesmo que o registro esteja preso em uma transação.
Por fim, alterei o parâmetro PFUNC.CODSITUACAO = 'A' para PFUNC.CODSITUACAO <> 'D' - Com a letra "A" é possível listar todos os colaboradores ativos mas, não serão listados por exemplo os que estão de férias, lilcença pelo INSS, Licença Maternidade, etc...
SELECT
PFUNC.NOME,
PFUNC.CODSITUACAO,
GCOLIGADA.NOME,
PPESSOA.CPF,
PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,
PPESSOA.SEXO,
PPESSOA.DTNASCIMENTO,
GCOLIGADA.CODCOLIGADA
FROM
PPESSOA (NOLOCK)
INNER JOIN PFUNC(NOLOCK)
ON
PPESSOA.CODIGO = PFUNC.CODPESSOA
INNER JOIN GCOLIGADA (NOLOCK)
ON
GCOLIGADA.CODCOLIGADA = PFUNC.CODCOLIGADA
WHERE
PFUNC.CODSITUACAO <> '(D)'
ORDER BY
PFUNC.NOME,
PFUNC.CODSITUACAO,
GCOLIGADA.NOME,
PPESSOA.CPF,
PFUNC.DATAADMISSAO,
PFUNC.DATADEMISSAO,
PPESSOA.SEXO,
PPESSOA.DTNASCIMENTO,
GCOLIGADA.CODCOLIGADA
É isso aí pessoal, espero ter contrinuído com alguém
RobinsonAlexandre- Mensagens : 2
Pontos : 6
Data de inscrição : 07/03/2013
Idade : 47
Re: Consulta SQL
Prezados Colegas, Boa Tarde!
Preciso criticar em sql os alunos que estavam matriculados em 2014/2 e que não renovaram a matricula em 2015/1. Como faço esta comparação em sql?
Preciso criticar em sql os alunos que estavam matriculados em 2014/2 e que não renovaram a matricula em 2015/1. Como faço esta comparação em sql?
evertonerp- Mensagens : 2
Pontos : 2
Data de inscrição : 22/05/2013
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Ter 20 Jun 2017 - 12:48 por paulo.ferreira_rj
» Instalar base DEMO
Sex 2 Jun 2017 - 6:29 por akaytatsu
» Relatorio Rm reports / Holerite salario
Ter 18 Out 2016 - 8:09 por Gárgio
» DEFAULT NO CADASTRO DE FUNCIONARIOS RM LABORE
Sex 7 Out 2016 - 21:51 por mpsbrasilia
» Duvida RM Labore - Calculo Folha de Pagamento
Seg 12 Set 2016 - 15:51 por RIVALDO PAES
» Exportar Imagem do banco de dados SQL SERVER
Qui 28 Jul 2016 - 11:42 por edivan
» Consulta SQL
Qui 10 Set 2015 - 11:32 por evertonerp
» Existe Algum Demo do RM Labore???
Sex 17 Abr 2015 - 11:53 por fmsolucoes
» RM BIBLIOS
Seg 16 Fev 2015 - 7:50 por fmsolucoes