theteo 0 Denunciar post Postado Março 28, 2014 Pessoal tenho as tabelas com os seguintes campos: tbl_aluno ( id_aluno , nome_aluno ) tbl_disciplina ( id_disc, nome_disc ) tbl_lista ( id_lista, id_aluno, id_disc ) tbl_nota ( id_aluno,id_disc,nota ) Quero criar uma pagina onde primeiro eu Listarei os ALUNOS e as disciplinas, mas o aluno pode ter apenas 1 ou 2 disciplinas, e um campo para colocar a nota, assim: Téo Portugues Nota: ( ) Matemática Nota: ( ) João Física Nota: ( ) Maria Ciencia Nota: ( ) Geografia Nota: ( ) A primeira dúvida é em uma única consulta SQL trazer isso ai. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
theteo 0 Denunciar post Postado Março 28, 2014 Usando o GROUP_CONCAT eu conseguiria fazer algo parecido, agora como eu recuperaria SEPARADAMENTE os IDs das disciplinas ? exemplo: SELECT m.id_aluno, u.nome, GROUP_CONCAT(m.id_disciplina) FROM tbl_marcacoes m, tbl_usuarios u WHERE m.id_aluno = u.id_user and m.id_agenda = '$id_agenda' GROUP BY m.id_aluno ORDER BY u.nome" Quando eu recupero isso: $sql->bind_result($id_aluno,$aluno, $disc); $disc contem algo do tipo 1,3 Eu tenho como pegar esse valor DIRETO NA QUERY separadamente > Algo como: GROUP_CONCAT(m.id_disciplina) as id_1,id_2 - kkkkkk Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Março 28, 2014 Sem Group_Concat SELECT m.id_aluno, u.nome, m.id_disciplina FROM tbl_marcacoes m, tbl_usuarios u WHERE m.id_aluno = u.id_user and m.id_agenda = '$id_agenda' ORDER BY u.nome" Compartilhar este post Link para o post Compartilhar em outros sites
theteo 0 Denunciar post Postado Março 28, 2014 Motta, isso ai me traz um resultado assim: 11 JUAREZ SOAREZ COISINHA DE JESUS 9 12 NARUTO 5 10 THETEO CARLO ENGENHEIRO 6 10 THETEO CARLO ENGENHEIRO 7 E eu queria algo assim: 10 THETEO CARLO ENGENHEIRO 6 , 7 Porém guardando em variáveis diferentes o 6 e o 7. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Março 28, 2014 Quantos m.id_disciplina diferentes tem ? SQL não trabalha com variaveis, trabalha com colunas, para "colunar" (pivot) se poderria usar o CASE. Ou separar as variáveis na camada de aplicação. Compartilhar este post Link para o post Compartilhar em outros sites
theteo 0 Denunciar post Postado Março 28, 2014 pois é motta, to pensnando em fzer isso via aplicacao mesmo, mas respondendo sua pergunta: esse id_disciplina vem da tbl_disciplinas O aluno escolhe a disciplina que ele quer fazer a prova. e marca ( essa informacao vai pra tbl_marcacoes ) por isso eu chamei de "m." depois, uma vez que a prova é feita, a pessoa listará a tbl_marcacoes para poder INSERIR as notas das provas. essa info eu jogarei na tbl_notas depois. Compartilhar este post Link para o post Compartilhar em outros sites