Ir para conteúdo
Handrix

Erro ao executar INNER JOIN?

Recommended Posts

Bom dia pessoal do fórum!

Estou recebendo erro na minha função SQL, só que não estou percebendo o que está errado, se é algum erro de desatenção minha ou o que, pois executo outros INNERs da mesma forma.

Segue abaixo o código SQL e a função no PHP.

 

SELECT repcity.codigo codigo, rep.nome nome, repcity.telefone telefone, repcity.celular celular, repcity.telefone2 fax, repcity.endereco endereco, repcity.email email, city.nome cidade, est.nome uf, merc.nome mercado FROM tb_representantes rep INNER JOIN tb_representantes_cidades repcity ON rep.codigo = repcity.cidade INNER JOIN tb_cidades city ON repcity.codigo = city.nome INNER JOIN tb_estados est ON est.codigo = repcity.estado INNER JOIN tb_mercado merc ON merc.codigo = rep.mercado estados est INNER JOIN tb_representantes_cidades repcity ON est.codigo = repcity.nome ORDER BY est.uf

 

$parameters = get_parameters_url();
	$province = get_parameter_select('estado',$parameters[1]);
	if(empty($province)) $province = "all";
	
    $sql = "";
	$sql .= "estados est INNER JOIN tb_representantes_cidades repcity ON est.codigo = repcity.nome ORDER BY est.uf";
	if($province != 'all') 
      $sql = " WHERE est.uf='{$province}'";
	  $collum = "repcity.codigo codigo, rep.nome nome, repcity.telefone telefone,  repcity.celular celular, repcity.telefone2 fax, repcity.endereco endereco, repcity.email email, city.nome cidade, est.nome uf, merc.nome mercado ";
	  $lojas = newsql_inner("representantes rep INNER JOIN tb_representantes_cidades repcity ON rep.codigo = repcity.cidade INNER JOIN tb_cidades city ON repcity.codigo = city.nome INNER JOIN tb_estados est ON est.codigo = repcity.estado INNER JOIN tb_mercado merc ON merc.codigo = rep.mercado", $sql, $collum);
	  
      $provinces = newsql_inner('estados est INNER JOIN  tb_representantes_cidades repcity ON est.codigo = repcity.cidade',  'GROUP BY est.uf', 'est.codigo codigo, est.uf uf');

Se alguém puder estar dando uma explicada além de corrigir, ficarei muito grato pra mim poder entender mesmo o que está errado.

Obrigado pela compreensão desde já!

 

 

Att: Handrix

Compartilhar este post


Link para o post
Compartilhar em outros sites
44 minutos atrás, rockrgo disse:

Qual o erro?

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'estados est INNER JOIN tb_representantes_cidades repcity ON est.codigo = repcity' at line 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
33 minutos atrás, rockrgo disse:

Isso não faz muito sentido


est.codigo = repcity.nome

 comparar um código de estado com um nome, o que é armazenado nestes dois campos são a mesma informação e mesmo tipo de dado?

A sim nem tinha me tocado, porém alterei o

est.codigo = repcity.nome

para

est.codigo = repcity.codigo

E permanece o mesmo erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Mark Augusto
      Faço a chamada e executo o código, mas não sei como dar um laço nas datas
      setlocale(LC_ALL, "pt_BR", "pt_BR.iso-8859-1", "pt_BR.utf-8", "portuguese"); date_default_timezone_set('America/Sao_Paulo'); $date = date("m/y"); $nu = 0; $rating = $conexaoDB->query("SELECT * FROM calendar ORDER BY id ASC LIMIT 20"); while($star = $rating->fetch_array()){ $id_c = $star['id-post']; $critics = $conexaoDB->query("SELECT * FROM postagens WHERE id_post='$id_c' AND online='calendar'"); $cri = $critics->fetch_assoc(); $editorCric = $cri["id_editor"]; $idPostCric = $cri["id_post"]; $date1 = explode("/", $star["data"]); $reconf_data = $date1[1]."/".$date1[2]; $nu = $nu+1; chamei apenas o mês e o ano e agrupei com o mês e ano do array... mas não tem dado resultado, então fiz uma gabiarra provisória  para ordenar por id. 
    • Por DoVaK
      Boa tarde,
       
      Estamos desenvolvendo um software wms (controle de estoque) que inicialmente funcionará na nuvem.
      Por ser um sistema complexo e com enorme quantidade de dados, estamos pensando em criar um banco de dados separado para cada empresa (cliente).
      Teriamos um banco de dados nosso onde estariam centralizadas algumas informações importantes, tais como as informações de cada empresa, dados para pagamento e os códigos que referenciariam o banco de dados especifico de cada cliente nosso (para fazer o redirecionamento correto no login).
      Seguem as dúvidas:
       
       - Esta seria uma boa forma de modelagem? 
       - Seria interessante ter o cadastro de todos os usuários no nosso banco de dados central ou deixar a tabela de usuários no banco de cada empresa?
       
      OBS: o SGBD é o MySQL.
       
      Obrigado pela ajuda.
       
      Jonathan.
    • Por Solo
      Boa noite  pessoal, estou com um problema, sou iniciante me php e estou em duvida com como posso fazer uma paginacao de produtos do banco de dados...... alguem poderia me ajudar ou me indicar um tutorial ???
       
      <?php
      error_reporting(0);
      ini_set(“display_errors”, 0 );
      require_once("conexao.php"); 
         $produtos = "SELECT produto_ID, nome_produto, imagem_produto, valor ";
          $produtos .= "FROM produto ";
          $resultado = mysqli_query($conecta, $produtos);
          if(!$resultado) {
              die("Falha na consulta ao banco");   
          }
      ?> 
       
       
       
      AONDE LISTA OS PRODUTOS 
       
       
       
          <div class="rowproducts">
          <div id="listagem_produtos2" class="">
            <?php while($linha=mysqli_fetch_assoc($resultado)) {   ?>
                       
                      <ul>
                          <div class="class22">
                          
                          <li>
                              
                              <img  class="img-responsive"  height="200" width="200" src="<?php echo $linha["imagem_produto"]?> "  >
                              </li>
                              
                              <li class="nproduto"><?php echo $linha["nome_produto"]?></li>
                               <li class="nproduto">R$ <?php echo $linha["valor"]?></li>
                          </div>
                          </ul>
                          
                          
                          
                          
                          
                          
                          
                      
                  <?php } ?>
                      
                      
                      
                    </div>
                    </div>
       
       
       
       
    • Por RooseveltDorea
      Bom dia a todos!
       
      Antes de vir para o fórum pesquisei quebrei a cabeça e mesmo assim não consegui. Então peço ajuda.
       
      Tenho uma aplicação, php com access, rodando perfeitamente em ambiente windows na redehost: sistescom.com.br/fc
       
      Qual o problema?
      Instalei o php 7 na minha máquina baixei a minha aplicação e vejam o resultado:
       
      ---
      Fatal error: Uncaught Error: Class 'COM' not found in C:\Apache24\htdocs\fc\connections\ADOConnection.php:41 Stack trace: #0 C:\Apache24\htdocs\fc\connections\Connection.php(54): ADOConnection->connect() #1 C:\Apache24\htdocs\fc\connections\ADOConnection.php(18): Connection->__construct(Array) #2 C:\Apache24\htdocs\fc\connections\ConnectionManager.php(224): ADOConnection->__construct(Array) #3 C:\Apache24\htdocs\fc\connections\ConnectionManager.php(84): ConnectionManager->getConnection('FichadeChamada_...') #4 C:\Apache24\htdocs\fc\connections\ConnectionManager.php(95): ConnectionManager->byId('FichadeChamada_...') #5 C:\Apache24\htdocs\fc\include\appsettings.php(697): ConnectionManager->getDefault() #6 C:\Apache24\htdocs\fc\include\dbcommon.php(90): include('C:\\Apache24\\htd...') #7 C:\Apache24\htdocs\fc\login.php(5): require_once('C:\\Apache24\\htd...') #8 {main} thrown in C:\Apache24\htdocs\fc\connections\ADOConnection.php on line 41
      ---
      Estou usando o phprunner para gerar minha aplicação.
      Não sou programador, estou aprendento PHP aos poucos.
       
      Muito obrigado a todos.
       
      Júnior
    • Por JeysonRomualdo
      <?php //conexão com banco de dados.   $pdo = new PDO("mysql:dbname=cadastro", "root", "");   ?>   <html> <head> <title>Autenticando Usuario</title> <script type="text/javascript"> function loginsussesfully() { setTimeout("window.location='painel.php'", 5000); } function loginfailed(){ setTimeout("window.location='login.php'", 5000); } </script> </head> <body>   <?php //capturando informaçoes digitadas pelo usuario $email = $_POST['email']; $senha = $_POST['senha']; $sql = "SELECT * FROM usuarios WHERE email = '$email' and senha = '$senha'"; $row = mysql_num_rows($sql); if ($row > 0) { session_start(); $SESSION['email'] = $_POST['email']; $SESSION['senha'] = $_POST['senha']; echo "<center>Você foi autenticado com susseco!</center>"; echo "<script>loginsuccesfully</script>"; } else{ echo "<center>Nome de usuario ou senha invalidos!</center>"; echo "<script>loginfailed</script>"; } ?>   </body>   </html> erro na linha 25... nao consigo identificar o que pode estar errado ou faltando
×

Informação importante

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