Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Raggruppare e fare una media

    Salve ragazzi!!!

    Volevo raggruppare dei dati in mysql.

    ho un database così composto:
    id-Articolo-Costo
    1------x---------5--
    2------x---------7--
    3------y---------2--
    4------z---------4--
    5------z---------5--
    6------z---------6--

    volevo raggruppare i dati i modo da fare la media tra i costi

    Risultato:
    id-Articolo-Costo
    1------x---------6-- (cioè la media matematica tra 5 e 7)
    2------y---------2--
    3------z---------5-- (cioè la media matematica tra 4, 5 e 6)

    Per favore mi date un consiglio su come posso svolgere questo lavoro?

    Grazie in anticipo

  2. #2
    codice:
    select articolo, sum(costo), count(*) from tabella group by articolo;
    In pratica ti ricavi 3 campi: articolo, somma dei costi, numero elementi.

  3. #3
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Non l'ho provata ma dovrebbe essere una cosa del genere.

    select id, articolo, avg(costo) as costo_medio from nome_tabella group by articolo;

  4. #4
    Grazie ad entrambi però solo in questo caso funziona

    select articolo, sum(costo), count(*) from tabella group by articolo;

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Scusa. Nella precedente risposta avevo messo nella select l'id che è superfluo e ti visualizza il primo id trovato di ciascun gruppo.


    select articolo, avg(costo) as costo_medio from nome_tabella group by articolo;

    Così dovrebbe essere perfetta.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.