Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dioneperes

[Resolvido] problema com INNER JOIN

Recommended Posts

São 4 tabela...

tbnoticia// Essa entra na lotes

tbnoticia_justiça// Essa entra na tbnoticia

tbnoticia_categoria// Essa entra na tbnoticia

tbnoticia_lotes // Essa busca a tbnoticia...

 

E que preciso cadastrar varios lotes hem.. uma noticia...

<?

if ($_GET['id']>0) {
$busca = " AND id_noticia=".(int)$_GET['id'];
} else if ($_GET['categoria']>0) {
$busca = " AND tbnoticias.id_categoria=".(int)$_GET['categoria'];
}

$dados = db_dados("
SELECT 
	tbnoticias.*,
	tbnoticias_lotes.*,
	tbnoticias_justica.*,
	tbnoticias_lotes.*,
	DATE_FORMAT(tbnoticias.data,'%d/%m/%Y')  as data1 , DATE_FORMAT(tbnoticias.data2,'%d/%m/%Y') as data2 , 
	tbnoticias_categorias.*
FROM 
	tbnoticias,
	tbnoticias_lotes
	INNER JOIN tbnoticias_categorias ON (tbnoticias_categorias.id_categoria = tbnoticias.id_categoria)
	INNER JOIN tbnoticias_justica ON (tbnoticias_justica.id_justica = tbnoticias.id_justica)
	INNER JOIN tbnoticias ON (tbnoticias.id_noticia = tbnoticias_lotes.id_noticia)
WHERE 1
	".$busca."
ORDER BY 
	data DESC
LIMIT 1;
	");

?>

 

 

Erro # 1066 - Not unique table/alias: 'tbnoticias'

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual campo relaciona tbnoticias e tbnoticias_lotes ?

 

remova essa seleção dupla

               tbnoticias,
               tbnoticias_lotes

faça com JOIN também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual campo relaciona tbnoticias e tbnoticias_lotes ?

 

remova essa seleção dupla

               tbnoticias,
               tbnoticias_lotes

faça com JOIN também.

 

O Campo id_noticia .. pois quero juntar os 2!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

então, isso aqui:

        FROM 
               tbnoticias,
               tbnoticias_lotes
               INNER JOIN tbnoticias_categorias ON (tbnoticias_categorias.id_categoria = tbnoticias.id_categoria)
               INNER JOIN tbnoticias_justica ON (tbnoticias_justica.id_justica = tbnoticias.id_justica)
               INNER JOIN tbnoticias ON (tbnoticias.id_noticia = tbnoticias_lotes.id_noticia)

você troca por:

        FROM 
               tbnoticias
               INNER JOIN tbnoticias_categorias ON (tbnoticias_categorias.id_categoria = tbnoticias.id_categoria)
               INNER JOIN tbnoticias_justica ON (tbnoticias_justica.id_justica = tbnoticias.id_justica)
               INNER JOIN tbnoticias_lotes ON (tbnoticias_lotes.id_noticia = tbnoticias.id_noticia)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ae da esse erro # 1052 - Column 'id_noticia' in where clause is ambiguous

 

<?

if ($_GET['id']>0) {
$busca = " AND id_noticia=".(int)$_GET['id'];
} else if ($_GET['categoria']>0) {
$busca = " AND tbnoticias.id_categoria=".(int)$_GET['categoria'];
}

$dados = db_dados("
SELECT 
	tbnoticias.*,
	tbnoticias_justica.*,
	DATE_FORMAT(tbnoticias.data,'%d/%m/%Y')  as data1 , DATE_FORMAT(tbnoticias.data2,'%d/%m/%Y') as data2 , 
	tbnoticias_categorias.*
FROM 
	tbnoticias
	INNER JOIN tbnoticias_categorias ON (tbnoticias_categorias.id_categoria = tbnoticias.id_categoria)
	INNER JOIN tbnoticias_justica ON (tbnoticias_justica.id_justica = tbnoticias.id_justica)
WHERE 1
	".$busca."
ORDER BY 
	data DESC
LIMIT 1;
	");

?>
<div class="acessibilidade">
Você está aqui:
   <a href="index.php">Home</a> ›
<a href="?p=noticias">Notícias</a> ›
Notícia completa	
</div>
<div class="interna">
<div style="margin-top:20px; color:#aaa;"><?=$dados['data1'];?></div><br />
<div class="titInterna3" style="margin-top:0;">
Dados do Lote:</div>
<div class="titInterna1" style="margin-top:0;">
1º Leilão: <?=utf8_decode($dados['data1']);?>               Exequente: <?=utf8_decode($dados['exequente']);?><br />
   2º Leilão: <?=utf8_decode($dados['data2']);?>               Executada: <?=utf8_decode($dados['executada']);?><br />
</div>
<div class="titInterna4" style="margin-top:0;">
Descrição do Lote:</div>
<div class="titIrterna2">
       <?php 
	$dados = db_dados("SELECT * FROM tbnoticias_lotes WHERE destaqueon = 1
	".$busca."
ORDER BY 
	data DESC
LIMIT 2;
	"); ?>
<?=utf8_decode($dados['lotes']);?></div>

   <div class="conteudo">
	<? if (strlen($dados['imagem'])>0) { ?>

   <? } ?>

       <?=utf8_decode($dados['texto']);?>

<?
$SQL = "SELECT *, DATE_FORMAT(data,'%d/%m/%Y') as data1 FROM tbnoticias WHERE id_categoria=".(int)$dados['id_categoria']." AND id_noticia NOT LIKE ".(int)$dados['id_noticia']." ORDER BY data DESC";
$Lista = new Consulta($SQL,10,$PGATUAL);
if (db_linhas($Lista->consulta)>0) {
?>
	<div class="limpar"></div>
       <div class="vejaTambem">Veja mais sobre <b><?=$dados['categoria'];?></b> [<a href="?p=noticias">+ Leilões</a>]</div>
       <div>
           <ul>
               <?
                   $i=0;
                   while ($linha = db_lista($Lista->consulta)) { $i++;
               ?>

               <li><span><?=$linha['data1'];?></span> <a href="?p=noticias_ver&id=<?=$linha['id_noticia'];?>"><?=utf8_decode($linha['titulo']);?></a></li>

               <?
               }
               ?>

           </ul>
       </div>
<?
}
?>

   </div>
</div>




Compartilhar este post


Link para o post
Compartilhar em outros sites

aqui:

        $busca = " AND id_noticia=".(int)$_GET['id'];

você altera para:

        $busca = " AND tbnoticias.id_noticia=".(int)$_GET['id'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.