Concatenar resultado de dois selects

09/02/2016

0

Boa tarde, Estou com uma dificuldade para mostrar o resultado do select da maneira que quero. vou explicar primeiro o que tenho e depois o que quero, agradeço se alguém poder me ajudar.

Tenho duas tabelas no banco de dados:

produto_tipo: id_produto_tipo, tipo_produto e produto_marca: id_produto_marca e nome_mmarca.

Fiz o select unindo as duas tabelas para que me mostrasse o resultado das duas:

<select name="carne">
<option value="vazio"> </option>
<?php
$sql = "(select tipo_produto from produto_tipo) union (select nome_marca from produto_marca)";
$result = mysqli_query($conexao, $sql);
while($linha = mysqli_fetch_assoc($result)){
?>
<option value=" <?php echo $linha['tipo_produto'].$linha['nome_marca']; ?> ">
<?php echo utf8_decode($linha['tipo_produto'].$linha['nome_marca']); ?>
</option>
<?php } ?>
</select>

Até ai tudo bem, mas ela não está mostrando o resultado concatenado.

está mostrando assim:
arroz
tio jõao
urmado

preciso que mostre assim:
arroz tio jõao
arroz urbano

sendo que o resultado da primeira parte (arroz) vem de uma tabela e o resultado da segunda parte(tio joao) vem da segunda tabela.
Julia

Julia

Responder

Posts

09/02/2016

Jothaz

O post esta muito confuso o que dificulta a ajuda.

Vamos tentar esclarecer qual o cenário.

Hoje você tem esta duas tabelas:

produto_tipo:
--id_produto_tipo
--tipo_produto

produto_marca:
--id_produto_marca
--nome_marca

O UNION não vai resolver o seu problema, pois o escopo dele é outro.
Para conseguir o que você quer você deve remodelar seu banco de dados para poder utilizar o INNER JOIN.

Então você deve remodelar e criar uma outra tabela, assim você poderá vários tipos de várias marcas (NXN).

produto_tipo:
--id_tipo
--tipo_produto

produto_marca:
--id_marca
--nome_marca

produto_tipo_marca:
--id_tipo
--id_marca

E então utilizar o INNER JOIN:

SELECT T.TIPO_PRODUTO, M.NOME_MARCA
FROM PRODUTO_TIPO T
INNER JOIN PRODUTO_TIPO_MARCA TM ON TM.TIPO = T.TIPO
INNER JOIN PRODUTO_MARCA M ON M.ID_MARCA = TM.ID_MARCA
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar