Ir para conteúdo

POWERED BY:

Arquivado

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

jonata paulino

Média de uma coluna com vários registros diferentes

Recommended Posts

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Carlos Antoliv
      Então, eh algo até simples, problema de lógica e tudo.  Eu tinha feito, mas o codigo sumiu do nada e nao lembro mais da lógica que eu empregara.
       
      O enredo éh assim
       
      tabela_grupo_produtos
      e
      tabela tabela_produtos
       
      Na tabela_grupo_produtos tem:
      - informatica;
      - eletrodomestico;
      - brinquedos;
       
      na  tabela_produtos tem os podutos que são ligados a tabela de grupo de grupo de produtos:
       
      - informatica->notebook
      - informatica->computador
      - informatica->roteador
       
      - eletrodomestico->geladeira
      - eletrodomestico->microondas
      - eletrodomestico->fogao
       
      - brinquedos->lego
      - brinquedos->boneca
      - brinquedos->carrinhos
       
      O que estou tentando fazer é o seguinte:
       
      - informatica->notebook
                              ->computador
                              ->roteador
       
      - eletrodomestico->geladeira
                                     ->microondas
                                     ->fogao
       
      - brinquedos- >lego
                             -> boneca
                             ->carrinhos
       
       
      Ou seja, mostra na tela pelo "GRUPO" de produtos.
       
      fiz um select no banco....
      e tambem um foreach, mas tem algo que ta errado.
       
      Cheguei até executar dois selects distintos:
      EXEMPLO:

      <!--#################### CÓDIGO SESSÃO ################################ --> 
      <?php     session_start();     echo "Usuario: ". $_SESSION['usuarioNome'];         echo "<br>";     echo "Codigo:  ". $idSessao = $_SESSION['usuarioId']; ?>
      <br>
       
      <a href="sair.php">Sair</a> <!-- #####################FIM CODIGO SESSÃO ############################### --> <?php      $servername = "localhost"; $username = "root"; $password = ""; $database = ""; try {     $conexao2 = new PDO('mysql:host=localhost;dbname=banco', $username, $password);       $conexao2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);   } catch(PDOException $e) {       echo 'ERROR: ' . $e->getMessage();   }          $sql2 = "SELECT pdos.fk_usuarios, pdos.nome_prod, pdo.nome_produto, nome_grupo_prod, pdos.foto, pdos.desc_prod, pdos.peso_liq_prod, pdos.qtd_prod, pdos.id_prod, pdos.un_medida     FROM tb_produtos AS pdos     JOIN tb_produto AS pdo ON pdos.nome_prod = pdo.id_produto     JOIN tb_grupo_prod AS gpdo      ON gpdo.id_grupo_prod = pdos.fk_tb_grupo_prod      INNER JOIN usuarios As usu     ON pdos.fk_usuarios = usu.id  ";     $stm2 = $conexao2->prepare($sql2);     $stm2->execute();     $kit3 = $stm2->fetchAll(PDO::FETCH_OBJ); ?> <?php require 'database/conexao.php'; // Recebe o termo de pesquisa se existir $termo = (isset($_GET['termo'])) ? $_GET['termo'] : ''; // Verifica se o termo de pesquisa está vazio, se estiver executa uma consulta completa if (empty($termo)):     $conexao = conexao::getInstance();     $sql = 'SELECT DISTINCT item.fk_tb_produtos, usu.nome, prod.nome_produto, prods.desc_prod, prods.peso_liq_prod, prods.un_medida, item.fk_tb_kit, kit.nome_kit, kit.preco_kit, prods.qtd_prod, kit.id_nome_kit, kit.desc_kit FROM tb_itemprodkit item /* tb_itemprodkit*/ INNER JOIN usuarios usu        /* usuarios*/ ON item.fk_usuarios = usu.id INNER JOIN tb_produtos prods  /* tb_produtos */ ON item.fk_tb_produtos = prods.id_prod INNER JOIN tb_kit kit       /*tb_kit */ ON item.fk_tb_kit = kit.id_nome_kit INNER JOIN tb_produto prod ON prods.nome_prod = prod.id_produto  WHERE fk_usuario = 5 GROUP BY kit.id_nome_kit  ';     $stm = $conexao->prepare($sql);     $stm->execute();     $kit = $stm->fetchAll(PDO::FETCH_OBJ); else:     // Executa uma consulta baseada no termo de pesquisa passado como parâmetro     $conexao = conexao::getInstance();     $sql = 'SELECT * FROM tb_kit WHERE nome_kit LIKE :nome_kit OR desc_kit LIKE :desc_kit';     $stm = $conexao->prepare($sql);     $stm->bindValue(':nome_kit', $termo.'%');     $stm->bindValue(':desc_kit', $termo.'%');     $stm->execute();     $kit = $stm->fetchAll(PDO::FETCH_OBJ); endif; ?> <!DOCTYPE html> <html> <head>     <meta charset="utf-8">     <title>Listagem KITs </title>     <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">     <link rel="stylesheet" type="text/css" href="css/custom.css"> </head> <body>     <div class='container'>         <fieldset>             <!-- Cabeçalho da Listagem -->             <legend><h1>Listagem de Kits</h1></legend>             <!-- Formulário de Pesquisa -->             <form action="" method="get" id='form-contato' class="form-horizontal col-md-10">                 <label class="col-md-2 control-label" for="termo">Pesquisar</label>                 <div class='col-md-7'>                     <input type="text" class="form-control" id="termo" name="termo" placeholder="Infome o Nome ou E-mail">                 </div>                 <button type="submit" class="btn btn-primary">Pesquisar</button>                 <a href='index.php' class="btn btn-primary">Ver Todos</a>             </form>             <!-- Link para página de cadastro -->             <a href='kit_cadastro.php' class="btn btn-success pull-right">Cadastrar Kit</a>             <div class='clearfix'></div>             <?php if(!empty($kit)):?>                 <!-- Tabela de Clientes -->                 <table class="table table-striped">                     <tr class='active'>                         <th>Foto</th>                         <th>produto</th>                         <th>Nome</th>                         <th>Descrição</th>                         <th>Preço</th>                         <th>Ação</th>                     </tr>                     <?php foreach($kit as $kit2):?>                         <tr>                             <td><img src='fotos/<?=$kit2->foto?>' height='40' width='40'></td>                                                                                      <?php foreach($kit3 as $kit4):?>                             <td>                                  <?=$kit4->nome_produto.'<br>'; ?>                                                                                     </td><?php endforeach; ?>                                                                                      <td><?=$kit2->nome_kit?></td>                                 </td>                             <td><?=$kit2->desc_kit?></td>                             <td><?='R$ '.$kit2->preco_kit.',00'?></td>                                                          <td>                                 <a href='kit_editar.php?id_nome_kit=<?=$kit2->id_nome_kit?>' class="btn btn-primary">Editar</a>                                 <a href='javascript:void(0)' class="btn btn-danger link_exclusao" rel="<?=$kit2->id_nome_kit?>">Excluir</a>                             </td>                         </tr>                                                                                                                                                    <?php endforeach;?>                 </table>             <?php else: ?>                 <!-- Mensagem caso não exista clientes ou não encontrado  -->                 <h3 class="text-center text-primary">Não existe Kit cadastrados!</h3>             <?php endif; ?>         </fieldset>     </div>     <script type="text/javascript" src="js/custom.js"></script> </body> </html>  
      ....se alguem puder ajudar...
       
    • Por chalamisterio
      Oi boa noite sou novo na programação e também no javaScript.
      Estou tentando fazer um Exercício onde é digitado a quantidade de Alunos é adicionada.
      Após a isso é digitado o nome do aluno e suas três notas.
      O programa deve calcula a média e dizer o status do aluno. Se é aprovado ou em exame e reprovado.
      o código parece estar corrento mas não exibe não na tela.
      Acho que nem entra no Loop do for
      Mas se alguém puder me ajudar fico grato
       



    • Por Hashira do Vento
      O exercício pede o que eu faça um código com uma matriz, onde eu peça uma linha qualquer ao usuário, e nela será feito a soma ou média dos elementos contidos.
      O problema é na hora da decisão do usuário na hora de escolher entre média ou soma, escrevendo a letra inicial de uma dessa palavras em maiúsculo. O "If" simplesmente não funciona, e eu acho que seja essa minha dificuldade, pois quando tirei o if, a soma funcionou normalmente (com o código atual a soma fica igual a zero no printf final). E sim, eu pesquisei a fundo sobre o tipo char, mas mesmo assim não consegui resposta alguma para a solução do meu problema :/
      Segue o código:
      Obs: Claramente, o meu código não está terminado (ainda falta pôr a parte da média), a partir do momento em que eu solucionar esse problema principal, creio que conseguirei finalizá-lo sem mais contratempos.
       
      #include <stdio.h> #include <stdlib.h> #include <locale> int main (void){ setlocale (LC_ALL, "Portuguese"); float M [2][2], media; int lin, x, soma1, soma2; char op[5]; printf ("Preencha a matriz: \n"); for (int l = 0; l<2; l++) { //linha for (int c = 0; c<2; c++ ) { //coluna scanf ("%f", &M[l][c]); } } printf ("Que operação você quer? S ou M?\n"); //Entrada do char, escolha da operação scanf ("%s", op); printf ("Em qual linha da matriz a operação deve ser realizada?\n"); scanf ("%d", &x); for (int l = x; l==x; l++) { for (int c = 0; c<2; c++ ){ printf ("%f \n", M[l][c]);//só mostrando os numeros da linha (ignore) if (op=="S") //tenho quase certeza que o problema se encontra aqui soma1= M[l][c]+soma1; } } printf ("O resultado da soma deu %d", soma1); //e na hora de mostrar a soma, ela sempre aparece como zero }
    • Por eliezertradutor
      Pessoal estou com problemas ao fazer um programa para calcular a media de duas notas. Segue o codigo:

      int main(int argc, char *argv[]) {
          float nota1,nota2, media;
          printf ("Digite a primeira nota");
          scanf ("%d", &nota1);
          do {
              printf ("digite 1 como nota\n");
              scanf ("%d", &nota1);
          } while (nota1==0);
          if (nota1 !=0)
          {
              printf ("digite a nota 2\n");
              scanf ("%d", &nota2);
              
          }
              media=(nota1+nota2)/2;
              printf ("a media eh %d.2\n ",media);
          return 0;
          
          
          
      }
      Ele compila legal e roda. Só que aparece a mensgem "Digite 1 como nota que só deveria aparecer quando o usuário digitasse 0 (Zero).
        a ideia é que o usuario nunca possa registrar zero como nota, no minimo 1.
    • Por mcflymito
      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
       
       
       

×

Informação importante

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