Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não consegui entender a query

Não consegui entender o modo como o MySQL interpretou a seguinte query:

select p.*, c.nome as categoria_nome from produtos as p join categorias as c on p.categoria_id = c.id

Entendi que foram mudados alguns nomes como é feito em python com algumas libs quando são chamadas, mas não entendi a linguagem "enxerga" essa query e sabe a ordem dos fatores

1 resposta
solução!

Dismistidicando o codigo temos o seguinte

select p.* c.nome as categoria_nome

Imprima tudo que tem na em da tabela p (onde 'p' será um "apelido" para tabela produto) e também a coluna 'nome' da tabela c(onde 'c' será um "apelido" para tabela categorias) .

from produtos as p

Da tabela produto que será chamada de 'p'.

join categorias as c

Interligado com a tabela categorias que será chamado de 'c'.

on p.categoria_id = c.id

Aqui diz que valor no campo p.categoria_id(campo categoria_id da tabela produtos) é definido pelo valor do campo c.id(campo id da tabela categorias) criando uma ligação entre as duas tabelas.

Quando se interliga tabelas (join) as associações são ligadas por chaves nesse caso p.categoria_id é a chave estrangeira quem vem da tabela categorias, onde c.id é a chave principal da tabela categorias.