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

Erro O identificador de várias partes "TABELA DE VENDEDORES.MATRICULA" não pôde ser associado.

Inseri o código abaixo:

SELECT [TABELA DE VENDEDORES].MATRICULA, [TABELA DE VENDEDORES].NOME, COUNT(*) FROM [TABELA DE VENDEDORES] TV INNER JOIN [NOTAS FISCAIS] NF ON TV.MATRICULA = NF.MATRICULA
GROUP BY [TABELA DE VENDEDORES].MATRICULA, [TABELA DE VENDEDORES].NOME

E apresentou o seguinte erro:

O identificador de várias partes "TABELA DE VENDEDORES.MATRICULA" não pôde ser associado. O identificador de várias partes "TABELA DE VENDEDORES.NOME" não pôde ser associado. O identificador de várias partes "TABELA DE VENDEDORES.MATRICULA" não pôde ser associado. O identificador de várias partes "TABELA DE VENDEDORES.NOME" não pôde ser associado.

O que fiz de errado?

1 resposta
solução!

Olá Nailson, tudo bem? O que acontece é que no INNER JOIN você nomeou (ALIAS) as tabelas da seguinte forma:

  • [TABELA DE VENDEDORES] ficou como "TV"
  • [NOTAS FISCAIS] ficou como "NF"

E portanto você precisa utilizar esses nomes no SELECT e no GROUP BY, assim a consulta fica da seguinte forma:

SELECT 
    TV.MATRICULA, 
    TV.NOME, 
    COUNT(*) 
FROM 
    [TABELA DE VENDEDORES] TV
    INNER JOIN 
    [NOTAS FISCAIS] NF
    ON TV.MATRICULA = NF.MATRICULA
GROUP BY 
TV.MATRICULA, 
TV.NOME

Ou então, você removeria os nomes ficando a consulta da seguinte forma:

SELECT 
    [TABELA DE VENDEDORES].MATRICULA, 
    [TABELA DE VENDEDORES].NOME, 
    COUNT(*) 
FROM 
    [TABELA DE VENDEDORES]
    INNER JOIN 
    [NOTAS FISCAIS]
    ON [TABELA DE VENDEDORES].MATRICULA = [NOTAS FISCAIS].MATRICULA
GROUP BY 
[TABELA DE VENDEDORES].MATRICULA, 
[TABELA DE VENDEDORES].NOME

Tenta usando uma das duas formas que deve funcionar corretamente!