Fórum SQL União! #150420

29/03/2003

0

Salve caros Delphianos,

Venho a vcs de novo para ver se encontra a solução para mais uma dúvida:

Estou querendo fazer uma consulta união. Como assim? Eu explico.

tabela Alunos:
aluCod
aluNome

tabela Exames:
exaALUCod
exaData
exaAprovado

tabela Histórico:
hisALUCod
hisData
hisTitulo
hisTexto

Relacionamentos:

1 Aluno faz N Exames
1 Aluno tem N Historicos


Gostaria de saber se através de uma consulta consigo o seguinte resultado:

aluno1 historico1
aluno1 historico2
aluno1 historico3
aluno1 historico4
aluno1 exame1
aluno1 exame2
aluno1 exame3
...

E se possível, quando utilizasse ordenação crescente pelo campo data o resultado fosse:

aluno1 historico1
aluno1 exame1
aluno1 historico2
aluno1 historico3
aluno1 exame2
aluno1 exame3
aluno1 historico4
...



Desde já agradeço qualquer colaboração.

André Fischer

----------------

Senhor, dê-me Serenidade para aceitar as coisas que não posso mudar, Coragem para mudar as que eu posso e Sabedoria para saber a diferença!


Afischer

Afischer

Responder

Posts

29/03/2003

Adilsond

SELECT A.aluNome,
E.exaData,
E.exaAprovado
FROM Alunos A,
Exames E
WHERE A.aluCod = E.exaALUCod
UNION ALL
SELECT A.aluNome,
H.hisData,
H.hisTexto
FROM Alunos A,
Historico H
WHERE A.aluCod = H.hisALUCod
ORDER BY 1, 2

Obs: As colunas das duas consultas devem possuir o mesmo tipo de dados, e como voce não especificou o tipo de dados e nem o banco de dados que voce está utilizando fica difícil lhe dar uma informação completa.

Comando SQL.

SELECT ...
FROM...
WHERE...
GROUP BY...
HAVING...

UNION ...

SELECT ...
FROM...
WHERE...
GROUP BY...
HAVING...

ORDER BY ...


Responder

Gostei + 0

30/03/2003

Afischer

Tchê, valeu!

Está funcionando!

Desculpa por não ter mencionado o BD que é o Access.




Valeu mesmo :D


André Fischer


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar