Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucas Medina

Selecionando valores com critério em outra tabela

Recommended Posts

Opa!

Então, nesses dias estive estudando mais sobre PHP e MySQL, e nisso me veio a seguinte questão:

 

* Possuo uma tabela com cantores cadastrados:

Cantores
------------
idCantor     artista
---------    --------
1            Cantor 1
2            Cantor 2
3            Cantor 3
4            Cantor 4
5            Cantor 5

E possuo uma tabela com músicas, que se relacionam com a tabela de cantores através do idCantor:

Musicas
------------
idMusica     titulo      idCantor
---------    --------    ---------
1            Musica 1    2    
2            Musica 2    2
3            Musica 3    3
4            Musica 4    1
5            Musica 5    1

Preciso fazer uma query onde, por exemplo, eu possa selecionar o titulo de todas as músicas de Cantor 2.

Como eu poderia fazer isso?

No caso, as informações que preciso estão na tabela Musicas, mas os dados de critério estão na de Cantores. A query deveria ser feita tomando o nome do Cantor como a base da query. Ou seja, não posso pesquisar diretamente pelo id, preciso associar o artista ao id, e o idCantor à musica, em uma query só !

 

É possível fazer isso?

Alguém poderia me ajudar com este mistério momentâneo? rsrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, após eu verificar páginas e mais algumas páginas, acho que descobri uma maneira de fazer o que estou tentando:

 

Pode-se utilizar o INNER JOIN junto com AND. Não sabia disso!

SELECT titulo
FROM Musicas
INNER JOIN Cantores ON Cantores.artista = 'Cantor x'
AND Cantores.idCantor = Musicas.idCantor

Dessa forma, pesquiso utilizando o nome do cantor.

Acaba sendo uma solução bastante útil para filtros de pesquisa, por exemplo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.