Ir para conteúdo

[Pedido] Consulta Sql Alunos Matriculados Por Disciplinas (RESOLVIDO)


MaicomRigo

Posts Recomendados


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Bom dia amigos...

Estou em um dilema aqui, pois não estou conseguindo montar um SQL aonde pegue os alunos matriculados por disciplina, sendo que quando faço a sentença ele sempre me retorna valores iguais...

Dai gostaria que alguem pudesse me ajudar com isso, não sei se estou fazendo algo errado na sentença ou algum parâmetro no sistema...

Ou se desse para pegar este campo na consulta, mas o problema é que ele nao me mostra o campo (acho que nem existe esse campo na tabela)

segue em anexo a imagem.

post-16017-0-48595000-1362659149_thumb.p

Segue em anexo tmb, a consulta aonde estou trabalhando em cima...

Se alguem puder me ajudar, agradeço..

Abraços!

SQL0001.txt

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  6
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  290
  • Conteúdo/Dia:  0.06
  • Reputação:   17
  • Pontos/Conquistas:  1.523
  • Conteúdo Resolvido:  0
  • Dias Ganho:  12
  • Status:  Offline

Eu estou sem uma base que tenha essas tabelas populadas ( to procurando ), mas você consegue saber se 1 aluno está ou não matriculado, e se está em qual matéria(curso)?

Acredito que você precisará fazer uma sub-select para ter esta informação.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Eu estou sem uma base que tenha essas tabelas populadas ( to procurando ), mas você consegue saber se 1 aluno está ou não matriculado, e se está em qual matéria(curso)?

Acredito que você precisará fazer uma sub-select para ter esta informação.

Sim, pois quando jogo esta consulta em um cubo, consigo filtrar pelos alunos "Matriculados"..Mas o problema é quando adiciona as disciplinas, elas simplesmente quadruplicam os valores....

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  6
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  290
  • Conteúdo/Dia:  0.06
  • Reputação:   17
  • Pontos/Conquistas:  1.523
  • Conteúdo Resolvido:  0
  • Dias Ganho:  12
  • Status:  Offline

poderia postar a consulta do cubo

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

poderia postar a consulta do cubo

É a que esta em anexo, João...

Agradeço por estar me ajudando...

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  6
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  290
  • Conteúdo/Dia:  0.06
  • Reputação:   17
  • Pontos/Conquistas:  1.523
  • Conteúdo Resolvido:  0
  • Dias Ganho:  12
  • Status:  Offline

Como eu te disse, eu não tenho estas tabelas populadas, fica um pouco difícil simular o seu problema.

você poderia explicar o relacionamento que você usou, pois pelo visto está faltando alguma coisa neles.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  11
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  1.140
  • Conteúdo/Dia:  0.22
  • Reputação:   60
  • Pontos/Conquistas:  6.161
  • Conteúdo Resolvido:  0
  • Dias Ganho:  33
  • Status:  Offline
  • Idade:  42
  • Dispositivo:  Windows

Maicon,

Aquele campo é somando de acordo com a parametrização do status de matricula que você, pois no status de matricula tem um flag que diz se conta como aluno ativo se tiver marcado todo aluno que tiver com esse status o sistema vai somar naquele campo.

Para sua consulta você vai precisar saber quais são os status que contam como ativo para colocar na sua consulta SQL.

[]'s

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Maicon,

Aquele campo é somando de acordo com a parametrização do status de matricula que você, pois no status de matricula tem um flag que diz se conta como aluno ativo se tiver marcado todo aluno que tiver com esse status o sistema vai somar naquele campo.

Para sua consulta você vai precisar saber quais são os status que contam como ativo para colocar na sua consulta SQL.

[]'s

Frederico, não encontrei este "status" que você citou, se puderes me dizer onde fica, agradeço.

E na consulta, como eu poderia implementar isso?

Abraço e obrigado.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

up

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  83
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  433
  • Conteúdo/Dia:  0.07
  • Reputação:   0
  • Pontos/Conquistas:  2.980
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Idade:  53

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  11
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  1.140
  • Conteúdo/Dia:  0.22
  • Reputação:   60
  • Pontos/Conquistas:  6.161
  • Conteúdo Resolvido:  0
  • Dias Ganho:  33
  • Status:  Offline
  • Idade:  42
  • Dispositivo:  Windows

Maicom,

Em curriculo e oferta lá na frente tem a opção situação de matricula conforme o print.

post-6710-0-68442900-1362790090_thumb.pn

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Ve se isso aqui te ajuda:

http://tdn.totvs.com...pageId=42043691

Fabio, as minhas turmas já estão cadastradas desta maneiras, em turmas/disciplinas...

A única coisa é que não estou conseguindo fazer é a consulta, no caso quero pegar tal curso, e listar todas as disciplinas e nelas ver quantos alunos estão matriculados...

o problema é que estes numeros, eles repetem, e no final eles praticamente quadruplicam...Não faço a minima ideia de como agrupar essas disciplinas e listar elas...

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Lembrando que estou usando esta versão do sistema, pois essa versão dos prints seria a mais atual, certo?

Não sei se isso influencia em algo, mas segue abaixo a versão que é utilizada aqui.

post-16017-0-79117100-1363003031_thumb.j

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  11
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  1.140
  • Conteúdo/Dia:  0.22
  • Reputação:   60
  • Pontos/Conquistas:  6.161
  • Conteúdo Resolvido:  0
  • Dias Ganho:  33
  • Status:  Offline
  • Idade:  42
  • Dispositivo:  Windows

Maicom,

Então a opção seja essa que está no print, pois pelo que vi, você está usando a MDI antiga do Classis.

post-6710-0-25089900-1363006635_thumb.jp

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Maicom,

Então a opção seja essa que está no print, pois pelo que vi, você está usando a MDI antiga do Classis.

Frederico, o problema não seria achar o código do status matricula, e sim listar eles por disciplina, é isso que está me complicando na consulta, não coloco o codigo do status na consulta, pois estou jogando a consulta em um cubo, mas quando coloco para listar as disciplinas os valores quadruplicam...

=/

Editado por MaicomRigo
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  11
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  1.140
  • Conteúdo/Dia:  0.22
  • Reputação:   60
  • Pontos/Conquistas:  6.161
  • Conteúdo Resolvido:  0
  • Dias Ganho:  33
  • Status:  Offline
  • Idade:  42
  • Dispositivo:  Windows

Maicom,

Agora entendi a sua questão achei que gostaria de somar os alunos como está no print que anexou inicialmente, os valores estão quadruplicando pois a sua consulta SQL está faltando alguns relacionamento. A baixo segue uma base que pode usar, bastar acrescentar as tabelas que você precisa.

SELECT

SMATRICPL.RA

FROM

SMATRICPL (NOLOCK) INNER JOIN SHABILITACAOFILIAL (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SHABILITACAOFILIAL.CODCOLIGADA AND

SMATRICPL.IDHABILITACAOFILIAL = SHABILITACAOFILIAL.IDHABILITACAOFILIAL

INNER JOIN SCURSO (NOLOCK) ON

SHABILITACAOFILIAL.CODCOLIGADA = SCURSO.CODCOLIGADA AND

SHABILITACAOFILIAL.CODCURSO = SCURSO.CODCURSO

INNER JOIN SHABILITACAO (NOLOCK) ON

SHABILITACAOFILIAL.CODCOLIGADA = SHABILITACAO.CODCOLIGADA AND

SHABILITACAOFILIAL.CODCURSO = SHABILITACAO.CODCURSO AND

SHABILITACAOFILIAL.CODHABILITACAO = SHABILITACAOFILIAL.CODHABILITACAO

INNER JOIN SMATRICULA (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SMATRICULA.CODCOLIGADA AND

SMATRICPL.IDPERLET = SMATRICULA.IDPERLET AND

SMATRICPL.IDHABILITACAOFILIAL = SMATRICULA.IDHABILITACAOFILIAL AND

SMATRICPL.RA = SMATRICULA.RA

INNER JOIN STURMA (NOLOCK) ON

SMATRICPL.CODCOLIGADA = STURMA.CODCOLIGADA AND

SMATRICPL.CODFILIAL = STURMA.CODFILIAL AND

SMATRICPL.CODTURMA = STURMA.CODTURMA AND

SMATRICPL.IDPERLET = STURMA.IDPERLET

INNER JOIN STURMADISC (NOLOCK) ON

SMATRICULA.CODCOLIGADA = STURMADISC.CODCOLIGADA AND

SMATRICULA.IDTURMADISC = STURMADISC.IDTURMADISC

INNER JOIN SPLETIVO (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SPLETIVO.CODCOLIGADA AND

SMATRICPL.IDPERLET = SPLETIVO.IDPERLET

  • Like 1
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  41
  • Conteúdo/Dia:  0.01
  • Reputação:   0
  • Pontos/Conquistas:  346
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Maicom,

Agora entendi a sua questão achei que gostaria de somar os alunos como está no print que anexou inicialmente, os valores estão quadruplicando pois a sua consulta SQL está faltando alguns relacionamento. A baixo segue uma base que pode usar, bastar acrescentar as tabelas que você precisa.

SELECT

SMATRICPL.RA

FROM

SMATRICPL (NOLOCK) INNER JOIN SHABILITACAOFILIAL (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SHABILITACAOFILIAL.CODCOLIGADA AND

SMATRICPL.IDHABILITACAOFILIAL = SHABILITACAOFILIAL.IDHABILITACAOFILIAL

INNER JOIN SCURSO (NOLOCK) ON

SHABILITACAOFILIAL.CODCOLIGADA = SCURSO.CODCOLIGADA AND

SHABILITACAOFILIAL.CODCURSO = SCURSO.CODCURSO

INNER JOIN SHABILITACAO (NOLOCK) ON

SHABILITACAOFILIAL.CODCOLIGADA = SHABILITACAO.CODCOLIGADA AND

SHABILITACAOFILIAL.CODCURSO = SHABILITACAO.CODCURSO AND

SHABILITACAOFILIAL.CODHABILITACAO = SHABILITACAOFILIAL.CODHABILITACAO

INNER JOIN SMATRICULA (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SMATRICULA.CODCOLIGADA AND

SMATRICPL.IDPERLET = SMATRICULA.IDPERLET AND

SMATRICPL.IDHABILITACAOFILIAL = SMATRICULA.IDHABILITACAOFILIAL AND

SMATRICPL.RA = SMATRICULA.RA

INNER JOIN STURMA (NOLOCK) ON

SMATRICPL.CODCOLIGADA = STURMA.CODCOLIGADA AND

SMATRICPL.CODFILIAL = STURMA.CODFILIAL AND

SMATRICPL.CODTURMA = STURMA.CODTURMA AND

SMATRICPL.IDPERLET = STURMA.IDPERLET

INNER JOIN STURMADISC (NOLOCK) ON

SMATRICULA.CODCOLIGADA = STURMADISC.CODCOLIGADA AND

SMATRICULA.IDTURMADISC = STURMADISC.IDTURMADISC

INNER JOIN SPLETIVO (NOLOCK) ON

SMATRICPL.CODCOLIGADA = SPLETIVO.CODCOLIGADA AND

SMATRICPL.IDPERLET = SPLETIVO.IDPERLET

Nossa!

Era isso mesmo que estava faltando, muito obrigado Frederico e a todos que ajudaram...

Muito Obrigado.

Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.