Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eu tenho duas tabelas no DB:
tabela categoria:
id_categoria | nome_categoria
1 camisetas
2 estrelas
tabela post:
id_post | título | resumo | conteúdo | categoria_id
1 teste lorem ipsum 2
2 test2 lorem ipsum 1
Se eu acessar na url: www.exemplo.com/camisetas
camisetas é a variavel $categoria por causa da regra no .htaccess
Eu quero acessar todos os dados da coluna categoria_id na tabela posts por nome e não por id:
$query = "SELECT * FROM post where ".$categoria." ";
qual instrução inner join uso nesse caso? Ou melhor como eu adiciono o inner join nesse select?
Agradeço ajuda
>
select * from post p inner join categoria c on (c.categoria_id = p.id_categoria)
Obrigada @alanschurch mas e o where fica no final assim?
select * from post p inner join categoria c on (c.categoria_id = p.id_categoria) WHERE ".$categoria.";
Dessa forma esta dando erro na clausula where
Olá @giihh,tudo bem ?
Tente assim:
select * from post inner join categoria where categoria_id = id_categoria
Resultado:
2 teste2 lorem ipsum 1 1 camisetas
1 teste lorem ipsum 2 2 camisetas
Para pegar o nome da categoria,é so ler a linha com o atributo 'nome_categoria',aonde id_categoria é o valor da categoria do produto
$sql = "select p.* from post as p inner join categoria as c on (c.categoria_id = p.id_categoria) WHERE c.categoria='$categoria'";
select * from post p inner join categoria c on (c.categoria_id = p.id_categoria)