Tenho as tabelas autor e frase:
autor:
autor_id | autor_nome
1 | joão
2 | pedro
frase:
frase_id | frase_frases |autor_id
1 | frase do joão | 1
2 | frase do pedro | 2
3 | frase do pedro | 2
4 | frase do pedro | 2
Como faço para exibir o nome "pedro" e todas as "frase do pedro" ?
O que filtra o resultado por determinada condição é a cláusula WHERE
.
Se quiser selecionar por nome:
SELECT
autor.autor_nome,
frase.frase_frases
FROM
autor
INNER JOIN
frase ON autor.autor_id = frase.autor_id
WHERE
autor.autor_nome = 'pedro'
Veja funcionando no SQL Fiddle.
Se quiser selecionar por id
:
SELECT
autor.autor_nome,
frase.frase_frases
FROM
autor
INNER JOIN
frase ON autor.autor_id = frase.autor_id
WHERE
autor.autor_id = 2
Veja funcionando no SQL Fiddle.
Se preferir localizar por qualquer nome que tenha pedro
no meio, pode usar assim:
WHERE
autor.autor_nome LIKE '%pedro%'