Mostrar dados de duas tabelas

Iai galera blz? Como faço pra fazer a consulta em duas tabelas sql ? Eu tentei usar o inner join mas ele repete os valores e eu não quero que se repita. Como faço isso?

Se repete os valores é porque o sql está errado.
Sem conhecer tabelas e o que pretendes obter, é impossível alguem conseguir ajudar.

1 curtida

Dá um distinct
SELECT distinct *FROM tabela

Você está certo! Queira me desculpar. Tenho duas tabelas uma se chama temas_redaçao e a outra se chama temas_narrativas e quero chamar o valor das duas em um tabela html via php.
O codigo sql que estou usando é o seguinte:

SELECT distinct * FROM
temas_redacao
INNER JOIN
temas_narrativa ON temas_redacao.id = temas_narrativa.id
WHERE
temas_redacao.codigo_professor = 1

Se vc está passando * ele acaba trazendo todos os campos e se vc analisar direito alguma coluna linha não está igual.
Pra não duplicar vc tem que tirar o * e informar as colunas que realmente vc irá utilizar na sua consulta.

E o que queres devolver?
Desta forma vai devolver todas as linhas de temas_redacao com o codigo_professor = 1 x numero de temas_narrativa de cada linha

Cara eu só quero retornar todos os valores dessas duas tabelas enquanto o codigo do professor for aquele sem repeti-las.

Mas o teu select já deve fazer isso (repetindo as linhas de temas_redacao para todas as linhas de temas_narrativa correspondentes)

Se tiveres:

-- tabela1
id    campo  descricaot1
 1    P       A
 2    P       B
 3    Q       C

-- tabela2
id     id_t1  descricaot2
 1     1      X
 2     2      Y
 3     2      Z
 4     2      T
 5     3      W

A query

SELECT * FROM tabela1 inner join tabela2 on tabela1.id = tabela2.id_t1
 where t1.campo = 'P'

vai devolver 4 linhas, não é isso que pretendes?

--resultado
id    campo  descricaot1    id     id_t1  descricaot2
 1    P       A              1     1      X
 2    P       B              2     2      Y
 2    P       B              3     2      Z
 2    P       B              4     2      T

@Sapinn, verifica se o campo de ligação entre as tabelas é esse mesmo nas duas.
Em qual tabela está a chave estrangeira e qual a coluna que a compõe?

Sim é isso mesmo o problema é que os valores estão se repetindo e eu não quero que eles se repitam.

Que valores estão repetidos?

Mostra exemplo prático:

  • o que tens nas tabelas?
  • o que obtens no teu select?
  • o que pretendias obter no teu select?

Pelo que me parece você está fazendo a junção comparando a PK da tabela temas_redacao com a PK da tabela temas_narrativa, imagino que seja por isso que o resultado está errado no retorno da consulta.