Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

INNER JOIN

Bom dia. Quando rodo o seguinte comando: SELECT tabela_de_vendedores.NOME A, notas_fiscais.DATA_VENDA B FROM tabela_de_vendedores VENDEDORES INNER JOIN notas_fiscais REGISTROS_DE_VENDA ON VENDEDORES.MATRICULA = REGISTROS_DE_VENDA.MATRICULA;

O MYSQL devolve ERROR 1054

No entanto se eu rodar: SELECT * FROM tabela_de_vendedores VENDEDORES INNER JOIN notas_fiscais REGISTROS_DE_VENDA ON VENDEDORES.MATRICULA = REGISTROS_DE_VENDA.MATRICULA;

O MYSQL retorna a consulta normalmente. Minha dúvida é que quando coloquei o nome dos campos da tabela, usei o auto complete do SQL, então os nomes dos campos estão corretos, e mesmo assim ele devolve um erro dizendo que os campos não existem.

1 resposta
solução!

Oi Danival, vc criou alias(apelidos) para a tabelas então tem que usar:

SELECT VENDEDORES.NOME A, REGISTROS_DE_VENDA.DATA_VENDA B

SELECT VENDEDORES.NOME A, REGISTROS_DE_VENDA.DATA_VENDA B 
FROM tabela_de_vendedores VENDEDORES 
INNER JOIN notas_fiscais REGISTROS_DE_VENDA 
ON VENDEDORES.MATRICULA = REGISTROS_DE_VENDA.MATRICULA;