Jump to content
Sign in to follow this  
Vitor Bueno

Como fazer esse Select?

Recommended Posts

Olá,

Gostaria de saber como posso fazer um select para o seguinte caso,
Eu recebo um dado que vem alguns numeros vou das exemplos

382570

E na minha tabela tem um campo com o nome de 'numero' o valor de 2570.

Gostaria de saber como posso relacionar esse que recebo com este que tenho no banco, Seria um processo reverso de

Select ........ Where numero like '%382570%'
Seria algo assim:
Select ........ Where 382570 like '%numero %'

eu não posso separar os dados que recebo, porque as vezes vai vim 382570 ,257038,325708, eu não tenho um padrão para recebelo, mas vou ter uma parte do valor dele sempre salvo no banco, se não entenderam posso especificar melhor o caso, Fico no aguardo e urgente :(

Share this post


Link to post
Share on other sites

Where '382570' like '%' + numero + '%'

Bom dia,

Estou usando no MySql, e da o seguinte 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 '+transacao+'%' LIMIT 0, 30' at line 3

Share this post


Link to post
Share on other sites

O "+" e a concatenação da string , não sei como é no MySql.

  • +1 1

Share this post


Link to post
Share on other sites

Pelo que entendi você recebe um valor, exemplo 382570 e precisa pegar parte dele e pesquisar no campo numero.

Tera que tratar este campo, com substring para saber o valor a ser pesquisado.

O valor recebido é fixo em tamanho?

  • +1 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By jeandelima
      Olá pessoal, estava querendo saber se podem me ajudar com uma pequena dúvida que surgiu há poucos dias.
       
      Estou com problemas pra importar um banco de dados pra o usar no meu servidor local (xampp). O banco de dados foi exportado do site de um cliente, e lá no server eles usam o mysql. Instalei a versão mais recente do xampp no meu pc, e quando fui importar o banco pra poder começar os trabalhos, deu vários erros de sintaxe. Daí fiz umas pesquisas e encontrei alguns materiais que mencionavam que o xampp agora usa o mariadb, e ele não é 100% compatível com mysql.
       
      Estou há um bom tempo sem mexer com programação e também sem me atualizar das coisas, e gostaria de saber se alguém sabe a partir de qual versão do xampp eles passaram a usar o mariadb. Eu já pesquisei mas não obtiver sucesso. E instalar e desinstalar inúmeras versões é algo trabalhoso e cansativo demais. Alguém poderia me ajudar?
       
      Desde já, muito obrigado.
       
      PS.: Por ser novo aqui no forum, e por não frequentar forum há muito tempo, acho que acabei postando no lugar errado. Peço perdão aos adms.
    • By Good
      Boa tarde,
       
      temos um servidor na amazon, e o site está direcionado para o servidor. Estamos tendo um problema, de vez em quando o servidor cai. 
       
      Gostaríamos de saber se tem algum programa no ubuntu, que monitore qual arquivo que teve alto consumo. Para sabermos se o código está escrito de maneira complexa, causando a queda do servidor.
       
      Eu lembro que uma vez a hostgator mandou um relatório, avisando que tal arquivo estava consumindo muito do servidor. É possível fazer esse monitoramento? Não temos como ficar 24h olhando por exemplo o htop..
       
      Aguardo uma resposta,
      obrigado!
    • By thejhunior
      Faz um tempo que não mexo com ASP classico, precisa de uma ajuda
       
      Em uma tabela mysql, tenho a tabela de produtos, e na coluna categoria que armazena o ID de uma categoria, gostaria de ao invés de armazenar apenas um ID, gostaria de armazenar varios IDs. Como se o produtos fizesse parte de varias categorias
       
      Minha duvida e como no select poderia buscar um produtos de categoria x em uma tabela com dados separados em "," "01.02,03"
       
       
    • By Hállex da Silva Costa
      Alguém poderia me dizer qual a forma mais correta de se utilizar uma classe seguindo as regras e padrões da Orientação a Objeto. Digamos que eu tenha uma classe Abstrata que fará a conexão com o banco de dados, eu crio uma outra classe que herda dessa classe abstrata, o correto seria utilizar os atributos da classe usando Exemplo 1 ou Exemplo 2?
      OBS: se eu usar o Exemplo 1 (que utiliza o parent) ou Exemplo 2 (que utilza o $this) o resultado dos dois é o mesmo como no print abaixo mostra.
      P.S.: Estou pergutando para não acabar fazendo gambiarra.
       
      Codígo Exemplo 1:
      <?php require_once 'db.abstract_class.php'; final class DB extends AbstractDB { public function __construct(String $dbtype, String $host, Int $port, String $dbname, String $charset, String $user, String $pass){ return parent::__construct($dbtype, $host, $port, $dbname, $charset, $user, $pass); } final function Connect(){ $dbtype = parent::getDBType(); $host = parent::getHost(); $port = parent::getPort(); $dbname = parent::getDBName(); $charset = parent::getCharset(); $dbh = new PDO($dbtype . ":host={$host};port={$port}dbname={$dbname};charset{$charset}", parent::getUser(), parent::getPass()); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, TRUE); $dbh->setAttribute(PDO::ATTR_PERSISTENT, TRUE); parent::setConnection($dbh); return parent::getConnection(); } final function Disconnect(){} final function selectDB(){} final function insertDB(){} final function updateDB(){} final function deleteDB(){} } ?> Codígo Exemplo 2:
      <?php require_once 'db.abstract_class.php'; final class DB extends AbstractDB { public function __construct(String $dbtype, String $host, Int $port, String $dbname, String $charset, String $user, String $pass){ $this->setDBType($dbtype); $this->setHost($host); $this->setPort($port); $this->setDBName($dbname); $this->setCharset($charset); $this->setUser($user); $this->setPass($pass); } final function Connect(){ $dbtype = $this->getDBType(); $host = $this->getHost(); $port = $this->getPort(); $dbname = $this->getDBName(); $charset = $this->getCharset(); $dbh = new PDO($dbtype . ":host={$host};port={$port}dbname={$dbname};charset{$charset}", $this->getUser(), $this->getPass()); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, TRUE); $dbh->setAttribute(PDO::ATTR_PERSISTENT, TRUE); $this->setConnection($dbh); return $this->getConnection(); } final function Disconnect(){} final function selectDB(){} final function insertDB(){} final function updateDB(){} final function deleteDB(){} } ?> Resultado:

    • By lucascientista
      Boa noite, galera é o seguinte eu estou montando um script que pesquisa no banco de dados e mostrar os resultados em uma página php, bem aí que está o problema eu pesquisei alguns sistemas de paginação e de pesquisa e acabei montando meu script, no meu script a pesquisa aparece na primeira página mas quando passo para a página adiante não me é mostrado resultado nenhum já verifiquei tudo e não consigo encontrar o erro, será que alguém pode me ajudar?
       
      <?php #Incluindo a conexão no banco de dados require_once '../dao/conexao/Conexao.php'; $conexao = Conexao::getInstance(); /***********************************************/ #Aqui começa a parte a paginação e pesquisa /**********************************************/ #Limitando o número máximo de resultados que serão mostrados na tela $maximo = 1; #Armazenando o valor da página atual $pagina = isset($_GET["pagina"])? ($_GET["pagina"]): '1'; #Subtraindo 1, porque os registro começam do zero como em um array $inicio = $pagina - 1; #Multiplicamos a quantidade de registros da pagina pelo valor da pagina atual $inicio = $maximo * $inicio; #Agora chega a parte em que fazemos o SELECT para contar os resultados $sql = "SELECT * FROM centroautomotivo"; $stmt = $conexao->prepare($sql); $stmt->execute(); $contagem = $stmt->fetchAll(PDO::FETCH_ASSOC); $total = 0; if(count($contagem)){ foreach ($contagem as $linhas) { #Armazenando o total de registros da tabela para fazer a paginação $total = count($contagem); } } /******************************************************************* * Aqui vai começar a parte da pesquisa, tornando o script em um só ********************************************************************/ #Recebe o termo da pesquisa se existir $termo = (isset($_GET["termo"])) ? ($_GET["termo"]) : ''; #Executa uma pesquisa com o termo pesquisado como parametro - Este SELECT irá servir também para a paginação if(empty($termo)){ //Nada aqui } else{ $sql = "SELECT * FROM centroautomotivo WHERE nomefantasia LIKE :nomefantasia or email LIKE :email ORDER BY idCentro LIMIT $inicio,$maximo"; $stm = $conexao->prepare($sql); $stm->bindValue(':nomefantasia', '%'.$termo.'%'); $stm->bindValue(':email', '%'.$termo.'%'); $stm->execute(); $autocenters = $stm->fetchAll(PDO::FETCH_ASSOC); } <?php require_once '../includes/header.php'; require_once '../controller/paginacaoPesquisaCentro.php'; ?> <div class="container mb-5"> <h1 class="text text-center">Centros Automotivos</h1> <p class="text text-center">Encontre o centro automotivo que mais se encaixa com você</p> <!--Formulário de pesquisa com paginação--> <form method="GET" action=""> <div class="d-flex flex-column bd-highlight mb-3"> <div class="p-2 bd-highlight"><img src="../img/Logotipo.png" class=" img-fluid rounded mx-auto d-block"></div> <div class="p-2 bd-highlight d-flex justify-content-center" style="margin-top: -10px;"><input type="text" name="termo" class="form-control" style=" width: 60%;" placeholder="Pesquise pelo Centro Automotivo!"/></div> <div class="p-2 bd-highlight d-flex justify-content-center"><button type="submit" class="btn btn-outline-primary"><i class="fas fa-search"></i>&nbsp;Pesquisar</button></div> </div> </form> <!--Fim do formuláio de pesquisa--> <!--Início dos resultados da pesquisa--> <?php if(!empty($autocenters)){?> <?php foreach ($autocenters as $autocenter) { ?> <center> <div class="card mb-3" style="max-width: 540px;"> <div class="row no-gutters"> <div class="col-md-4"> <img src="../controller<?php empty($autocenter["foto"])? 'images/pic.png' : $autocenter["foto"] ?>" class="card-img img-fluid" width="150px" height="150px"> </div> <div class="col-md-8"> <div class="card-body"> <p class="card-text text-justify"><?php $autocenter["nomefantasia"]?></p> <p class="card-text text-justify"><small class="text-muted"><?=$autocenter["email"]?></small></p> </div> </div> </div> </div> </center> <?php }//Fechamento do foreach?> <div id="alignpaginacao"> <?php //determina de quantos em quantos links serão adicionados e removidos $max_links = 6; //dados para os botões $previous = $pagina - 1; $next = $pagina + 1; //usa uma funcção "ceil" para arrendondar o numero pra cima, ex 1,01 será 2 $pgs = ceil($total / $maximo); //se a tabela não for vazia, adiciona os botões if($pgs > 1 ){ echo "<br/>"; //botao anterior if($previous > 0){ echo "<div id='botaoanterior'><a href=".$_SERVER['PHP_SELF']."?termo={$termo}?pagina=$previous><input type='submit' name='bt-enviar' id='bt-enviar' value='Anterior' class='button' /></a></div>"; } else{ echo "<div id='botaoanteriorDis'><a href=".$_SERVER['PHP_SELF']."?pagina=$previous><input type='submit' name='bt-enviar' id='bt-enviar' value='Anterior' class='button' disabled='disabled'/></a></div>"; } echo "<div id='numpaginacao'>"; for($i=$pagina-$max_links; $i <= $pgs-1; $i++) { if ($i <= 0){ //enquanto for negativo, não faz nada }else{ //senão adiciona os links para outra pagina if($i != $pagina){ if($i == $pgs){ //se for o final da pagina, coloca tres pontinhos echo "<a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a> ..."; }else{ echo "<a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a>"; } } else{ if($i == $pgs){ //se for o final da pagina, coloca tres pontinhos echo "<span class='current'> ".$i."</span> ..."; }else{ echo "<span class='current'> ".$i."</span>"; } } } } echo "</div>"; //botao proximo if($next <= $pgs){ echo " <div id='botaoprox'><a href=".$_SERVER['PHP_SELF']."?termo={$termo}?pagina=$next><input type='submit' name='bt-enviar' id='bt-enviar' value='Proxima' class='button'/></a></div>"; }else{ echo " <div id='botaoproxDis'><a href=".$_SERVER['PHP_SELF']."?pagina=$next><input type='submit' name='bt-enviar' id='bt-enviar' value='Proxima' class='button' disabled='disabled'/></a></div>"; } } ?> </div> <?php }//Fechamento do if?> <!--Fim dos resultados da pesquisa--> <!--Início da paginação--> <!--Fim da paginação--> </div> <?php require_once '../includes/footer.php'; ?>  
      Bem aí está meu código, fico muito agradecido se puderem me ajudar.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.