1
resposta

Juntando tabelas - Inner Join

Tenho uma tabela com as seguintes colunas: A - Código do País; Nome do País; População B - Código do País; Nome do País; Taxa de Alfabetização; PIB Per Capita.

Como faço pra juntar os dados da tabela A e da tabela B, com os campos: Código do País; Nome do País; População; Pib Per Capita?

Todos inner joins que eu tento traz todos os dados numa grande tabela? O Union não suporta tabelas com colunas diferentes.

1 resposta

Boa tarde Robson, tudo bem?

Pelo que entendi, você está ligando uma tabela na outra por meio do campo "Código do País" presente em ambas e com isso retornando todos os dados dessas tabelas. Nesse caso, você pode especificar os campos desejados dentro da seção SELECT, tente algo como o seguinte código dentro da estrutura mencionada:

SELECT
    A.codigo_pais,#Como essa coluna será igual, você pode trazer ela de qualquer uma das tabelas envolvidas no SELECT
    A.nome_pais,
    A.populacao,
    B.pib_per_capita
FROM
    tabela_a A
INNER JOIN
    tabela b B
    ON A.codigo_pais = B.codigo_pais;

Observações: Perceba que você possui a informação do Nome do País em ambas tabelas, mas pense e reflita sobre a possibilidade de ter essa informação em apenas uma delas.