Buthy 0 Denunciar post Postado Maio 19, 2010 Dae galera É o seguinte, tenho duas tabelas com os seguintes atributos exercicio_objetivo (atributos: nvlcod, objtit, objper) exercicio_preencher (atrivutos: nvlcod, pretit, preper) elas tem o atributo nvlcod em comum. queria selecionar as duas tabelas, onde o nvlcod seria igual a 1 quando eu seleciono somente de uma tabela, funciona.. mas com as duas não. o que estou testando é o seguinte: $sql = "SELECT * FROM exercicio_objetivo WHERE nvlcod = '1'"; esse funcionou, mas para selecionar tudo das DUAS tabelas, onde o nvlcod = 1, como eu faço? tentei assim, e nada: $sql = "SELECT * FROM exercicio_objetivo AND exercicio_preencher WHERE nvlcod = '1'"; o codigo inteiro: <? include ("conexao.php"); ?> .... .... <? $sql = "SELECT * FROM exercicio_objetivo AND exercicio_preencher WHERE nvlcod = '1'"; $c_usu = mysql_query($sql,$con); while ($r_usu = mysql_fetch_array($c_usu)){ echo "<tr>"; echo "<td>$r_usu[objtit]</td>"; echo "<td>$r_usu[objper]</td>"; echo "</tr>"; } ?> sendo que o erro acontece na linha do WHILE muito obrigado Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Maio 19, 2010 você pode colocar uma virgula ali, no lugar do AND, ou usar um UNION entre as 2 consultas... Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Maio 19, 2010 você pode colocar uma virgula ali, no lugar do AND, ou usar um UNION entre as 2 consultas... Ok, se eu uso a , no lugar do AND, ficando assim: $sql = "SELECT * FROM exercicio_objetivo, exercicio_preencher WHERE nvlcod = '1'"; Da o erro: Column 'nvlcod' in where clause is ambiguous agora esse UNION eu nao sei como usar.. ehehe Como funciona?? Valeu Compartilhar este post Link para o post Compartilhar em outros sites
Douglas_R 0 Denunciar post Postado Maio 19, 2010 Tenta assim: <?php $sql = mysql_query("SELECT * FROM `exercicio_objetivo`, `exercicio_preencher` WHERE `nvlcod` = '1'") or die (mysql_error()); while ($r_usu = mysql_fetch_array($sql)) { echo "<tr>"; echo "<td>$r_usu[objtit]</td>"; echo "<td>$r_usu[objper]</td>"; echo "</tr>"; } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Maio 20, 2010 se não der certo a solução do Douglas, use um JOIN SELECT * FROM `exercicio_objetivo` AS `obj` JOIN `exercicio_preencher` AS `preenche` ON `obj`.`nvlcod` = `preenche`.`nvlcod` WHERE `obj`.`nvlcod`=1 Compartilhar este post Link para o post Compartilhar em outros sites
Daniel Costa da Silva 0 Denunciar post Postado Maio 20, 2010 Ai vai... <? // SELECIONO E COMPARO OS CAMPOS DO nvlcod E DOU UM NOVO NOME PARA CADA TABELA COMO Eo1 e Eo2 E DEPOIS FAÇO A CHAMADA COM OS DADOS JA COMPARADOS - WHERE Eo1.nvlcod $sql = "SELECT * FROM exercicio_objetivo Eo1 INNER JOIN exercicio_preencher Eo2 ON Eo1.nvlcod = Eo2.nvlcod WHERE Eo1.nvlcod = '1'"; $c_usu = mysql_query($sql,$con); while ($r_usu = mysql_fetch_array($c_usu)){ echo "<tr>"; echo "<td>$r_usu[objtit]</td>"; echo "<td>$r_usu[objper]</td>"; echo "</tr>"; } ?> cara se der errado posta ae, que rapidinho chega ajuda... vlw parceiro....(y) Compartilhar este post Link para o post Compartilhar em outros sites
Buthy 0 Denunciar post Postado Maio 21, 2010 opaa! valeu galeraa ja consegui, tive que fazer dois selects, por causa do jeito que o meu banco de dados estava mas funcionou tudo certinho! :D brigadao Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Maio 21, 2010 Com o UNION, ficaria algo como: $sql = "SELECT * FROM exercicio_objetivo WHERE nvlcod = 1 UNION SELECT * FROM exercicio_preencher WHERE nvlcod = 1"; mais fácil não?! bastava pesquisar um pouco, pelo termo que indiquei: http://dev.mysql.com/doc/refman/4.1/pt/union.html Compartilhar este post Link para o post Compartilhar em outros sites
Palexandre 1 Denunciar post Postado Novembro 25, 2016 Pessoal, estou tentando fazer uma consulta em duas tabelas, porém me retorna dados duplicados. Tenho uma tabela chamada tb_animal e outra tb_cliente Fiz o seguinte SELECT * FROM `tb_cliente` INNER JOIN `tb_animal` ele traz duplicado conforme abaixo.. Podem me ajudar ? 2536584102 teste 14/10/1996 5048754495 teste@terra.com.br 65231478 85478506 testador de software Brasil M 896523/D 10/11/2016 654982/D Aurora F Puro Teste2 605 39548952014 Teste2 25/03/1975 7048129952 teste2@hotmail.com 85428631 72854590 analista de testes Inglaterra F 654982/D 24/11/2016 654982/D Aurora F Puro Teste2 605 25365841028 teste 14/10/1996 5048754495 teste@terra.com.br 65231478 85478506 testador de software Brasil M 896523/D 10/11/2016 896523/D Trovao M Puro teste 203 39548952014 Teste2 25/03/1975 7048129952 teste2@hotmail.com 85428631 72854590 analista de testes Inglaterra F 654982/D 24/11/2016 896523/D Trovao M Puro teste 203 Compartilhar este post Link para o post Compartilhar em outros sites