Ir para conteúdo
mcflymito

Problema com coluna

Recommended Posts

há um jeito de separar valores inseridos dentro de uma coluna

e exibi-los também separados, ex: os valores 120, 160 estão salvos na mesma coluna, mas quero exibilos separadamente, tipo: valor1, valor2

 

eu só consigo exibir eles juntos, como se fossem um só numero

 

 

 

Sem título.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em php? Os valores variam entre unidades, dezenas, centenas, milhares e etc, ou são apenas na casa das centenas?

 

Se for em PHP e for apenas na casa das centenas, você pode utilizar o substr(). por exemplo:

 

$valor1 = substr("$coluna->fav", 0, 3);
$valor2 = substr("$coluna->fav", 5, 8);

echo $valor1;
echo $valor2;

Também pode pesquisar sobre o substr no link abaixo:

http://php.net/manual/pt_BR/function.substr.php

 

Caso os valores variem você pode utilizar o explode() junto com o substr(). por exemplo:

 

$fav = explode(" ", $coluna->fav);
$valor1 = substr($fav[0], 0, -1);
$valor2 = $fav[1];

echo $valor1;
echo $valor2;

O substr() vai servir apenas para eliminar a vírgula nesse ultimo caso.

 

Também pode pesquisar sobre o explode no link abaixo:

http://php.net/manual/pt_BR/function.explode.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

É uma má prática de modelagem armazenar valores desta forma.

 

O melhor é separar os valores em linhas diferentes.

 

No caso d se precisar "juntar" para algum sql pode-se usar o group_concat . mas o inverso complica muito a query 

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 horas atrás, Motta disse:

É uma má prática de modelagem armazenar valores desta forma.

 

O melhor é separar os valores em linhas diferentes.

 

No caso d se precisar "juntar" para algum sql pode-se usar o group_concat . mas o inverso complica muito a query 

 

Meu intuito e criar uma lista de favoritos que armazena id's.

essa e a única forma que vejo pra fazer, sou bem noob em mysql e php, mas quero aprender.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que seria este "fav" 

 

no lugar de 

id           fav

1234    10,20

 

seria

 

id            fav

1234     10

1234     20

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 horas atrás, Motta disse:

O que seria este "fav" 

 

no lugar de 

id           fav

1234    10,20

 

seria

 

id            fav

1234     10

1234     20

 

Exatamente como a imagem do meu 1° tópico

Inserir vários números em uma coluna e utilizá-los separadamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então , normalize a tabela para ter os valores separados.

 

Simplifica o sql.

 

Em todo caso pesquise por regexp

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 horas atrás, Motta disse:

Então , normalize a tabela para ter os valores separados.

 

Simplifica o sql.

 

Em todo caso pesquise por regexp

 

certo, irei tentar.

 

mas da maneira que você falou, poderia me dizer como eu salvaria os valores em colunas diferentes?

vamos supor que existem 10 colunas fav, como eu faço, se uma já estiver sendo usada, repassar para a outra?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Citar

salvaria os valores em colunas diferentes?

 

... nâo , linhas diferentes , pelo que entendi você teria uma tabela 

 

favoritos_usuario 

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, Motta disse:

 

... nâo , linhas diferentes , pelo que entendi você teria uma tabela 

 

favoritos_usuario 

 

Depois de muita peleja resolvi aqui

 

Fiz como me disse, separei os valores 

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 Joseph Renato
      OLÁ CAROS AMIGOS. PRECISO QUE EM UMA TABELA A PRIMEIRA COLUNA CHAMADA ALUNO FIQUE FIXA. E QUE O RESTO CONTINUE O MESMO.
      SEGUE ABAIXO OS CÓDIGOS:
       
      <!DOCTYPE html>
      <html>
      <title>LISTA DE ALUNO</title>
          <thead>
                              
      <head>
          <meta http-equiv="Content-type" content="text/html; charset=utf-8">
          <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">
          <title>LISTA DE ALUNO.</title>
          <link rel="shortcut icon" type="image/png" href="/media/images/favicon.png">
          <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://www.datatables.net/rss.xml">
          <link rel="stylesheet" type="text/css" href="/media/css/site-examples.css?_=19472395a2969da78c8a4c707e72123a">
          <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css">
          <style type="text/css" class="init">
          
          tfoot input {
              width: 125%;
              padding: 1px;
              box-sizing: border-box;
          }
          </style>
          <script type="text/javascript" src="/media/js/site.js?_=5e8f232afab336abc1a1b65046a73460"></script>
          <script type="text/javascript" src="/media/js/dynamic.php?comments-page=examples%2Fapi%2Fmulti_filter.html" async></script>
          <script type="text/javascript" language="javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
          <script type="text/javascript" language="javascript" src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
          <script type="text/javascript" language="javascript" src="../resources/demo.js"></script>
          <script type="text/javascript" class="init">
          
      $(document).ready(function() {
          // Setup - add a text input to each footer cell
          $('#example tfoot th').each( function () {
              var title = $(this).text();
              $(this).html( '<input type="text" placeholder="procurar'+title+'" />' );
          } );
          // DataTable
          var table = $('#example').DataTable();
          // Apply the search
          table.columns().every( function () {
              var that = this;
              $( 'input', this.footer() ).on( 'keyup change', function () {
                  if ( that.search() !== this.value ) {
                      that
                          .search( this.value )
                          .draw();
                  }
              } );
          } );
      } );

          </script>
      </head>
      <body class="wide comments example">
          <a name="top" id="top"></a>
          <div class="fw-background">
              <div></div>
                      
                      </div>
                  </div>
              </div>
              
                  </div>
              </div>
              <div class="fw-body">
                  <div class="content">
                      
                      </div>
                      <table id="example" class="display" style="width:100%">
                          <thead>
                              <tr>
                          <th>ALUNO</th>
                                              <th>CURSO</th>
                          <th>PERIODO</th>
                          <th>MATERIA</th>
                                              <th>BIMESTRE</th>
                                              <th>NOTAS</th>
                          
                                              
                                              
                                              
                      </tr>
                          </thead>
                          
                          
      </tbody>
      <TR>
      <TD>JORGE</TD>
      <TD>ADMINISTRAÇÃO</TD>
      <TD>NOITE</TD>
      <TD>CONTABILIDADE</TD>
      <TD>SEGUNDO</TD>
      <TD>7</TD>
      <TR>
      <TD>PEDRO</TD>
      <TD>ADMINISTRAÇÃO</TD>
      <TD>MANHÃ</TD>
      <TD>GESTÃO</TD>
      <TD>TERDEIRO</TD>
      <TD>9</TD>
      </TR>

      </tbody>

                          <tfoot>
                              <tr>
                          <th>ALUNO</th>
                                              <th>CURSO</th>
                          <th>PERIODO</th>
                          <th>MATERIA</th>
                                              <th>BIMESTRE</th>
                                              <th>NOTAS</th>
                          
                                              
                                              
                                              </tr>
                          </tfoot>
      <thead>
                          <th>ALUNO</th>
                                              <th>CURSO</th>
                          <th>PERIODO</th>
                          <th>MATERIA</th>
                                              <th>BIMESTRE</th>
                                              <th>NOTAS</th>
                          
                                              
                                              
                                              </tr>
                          </thead>

      <html>

      </html>
    • Por jonata paulino
      Amigo, tenho uma tabela que tem uma coluna com ano e nome
      A coluna nome possui nomes de vários municípios e cada município aparece uma vez em cada ano.
      A coluna ano está organizada de 2011 a 2015.
      Eu queria tirar a média de uma vez só de todos estes municípios e de todos os anos.
      Eu usei o seguinte código.
       
      SELECT codigo, ano, uf, nome,  AVG(cota_fpm), AVG(cota_iof_ouro), AVG(cota_itr), AVG(cota_parte_cfem) 
      FROM economia
      GROUP BY codigo;
       
      Minhas colunas estão como varchar(130), e tem alguns valores da média que estão corretos e outros não.
    • Por otaviinn
      Olá a todos, 
       
      Estou desenvolvendo um script simples, porém me deparei com uma situação que sei que pode ser resolvida através do If, mas acredito que possa existir uma maneira mais simples (e talvez mais correta) de se fazer, é o seguinte:
       
      Com um select simples preciso trazer as colunas Nome, RG,ORGAOEXP, DATAEXP, CPF, DATANASC e o telefone CELULAR do cliente, ai que está o problema, pois a estrutura da tabela encontra-se assim:
      FORMACONTATO1 FORMACONTATO2 FORMACONTATO3 CONTATO1 CONTATO2 CONTATO3 ----------- ------------- -------------- ---------- ----------- ------------ Residencial Celular Comercial 1122443355 11945678910 1122433456  
      Então, eu devo trazer o CONTATO 2 que é o contato correspondente a FORMA DE CONTATO de celular, no sistema estes campos são editaveis, então isso varia de cadastro para cadastro, tem registro que o contato 1 é o celular, em outros o 3 e assim por diante.
       
      Existe alguma forma de trazer somente o contato correspondente a forma de contato CELULAR sem ser pelo If?
       
      Agradeço a atenção e colaboração de todos.
       
    • Por Marcelo Pereira da Costa
      Boa noite
      Gostaria de uma ajuda. Eu tenho uma tabela em que preciso inserir o resultado de um select em um campo, já existente, desta mesma tabela.
       
      - O nome da tabela é projeto.
      = Eu tenho os campos na tabela: Id_servidor, Matricula e Senha.
      - Antes de realizar a inserção eu preciso fazer uma concatenação do Id_servidor  com o campo Matricula truncado, que é o seguinte comando: (SELECT CONCAT(s.Id_servidor, substring(s.Matricula, 1, 3)) FROM projeto s;)
      - E agora preciso inserir o resultado do select descrito acima no campo Senha da mesma tabela chamada projeto.
      Como consigo fazer isso?
      Obrigado desde já.
    • Por aGuga
      Criei uma tabela onde os campos são os dias do mês, 1,2,3 ...31
       
      A unica forma que encontrei para atualizar cada dia do mês com o conteúdo desejado é utilizado if
       
      IF (DIA = [1]) UPDATE...
       
      Existe alguma outra forma de realizar?
×

Informação importante

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