Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Problema con AVG()

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    201

    Problema con AVG()

    Salve a tutti,

    sto cercando di usare la funzione AVG() in una query, la seguente

    codice:
    sql = "SELECT oggetto.descrizione, avg(carico.quantita) AS media FROM carico INNER JOIN oggetto ON carico.id_merce = oggetto.id_merce where oggetto.descrizione + oggetto.fornitore like '%" & Cerca & "%'group by oggetto.descrizione"
    Praticamente seleziono un articolo e dovrebbe darmi la media,
    cerco di stampare il risultato con
    codice:
    <td><%=rs("media")%></td>
    ... Ma niente da fare, ottengo questo risultato:

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80020009)
    Si sono verificati errori in un'operazione OLE DB composta da più passaggi. Controllare i singoli valori di stato OLE DB, se disponibili. Nessuna operazione eseguita.

    Qualcuno saprebbe illuminarmi?

  2. #2
    fatti stampare a video il valore della variabile SQL poi eseguila direttamente in access

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    201
    Eccomi,

    allora ho provato a stampare la query.. Stampa i valori tutti a 0, ma se faccio la media dell'intera colonna il risultato è corretto, solo che ho l'esigenza di cercare un prodotto in particolare...

    Metto le mani avanti, devo creare dei grafici di consumo, nel senso devo fare un rapporto fra scarichi e carichi, quindi mi serve la media.

    Ovviamente prima di lavorare sul grafico devo avere i risultati dal db...

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da optime
    fatti stampare a video il valore della variabile SQL poi eseguila direttamente in access
    Veramente ti si e' chiesta la variabile e non il risultato della query...
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    ----------------------------------------------------
    impariamo a fare un po' di debug

    *immediatamente prima* di eseguire la query metti

    Response.Write "maGGica SQL...: " & sql & "
    "
    Response.Flush

    poi posta quello che viene a video (prova anche a eseguire la query direttamente in access)
    ----------------------------------------------------

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2012
    Messaggi
    201
    Ecco il report:

    "maGGica SQL...:SELECT oggetto.descrizione,oggetto.fornitore, avg(carico.quantita) AS media FROM carico INNER JOIN oggetto ON carico.id_merce = oggetto.id_merce where oggetto.descrizione + oggetto.fornitore like '%burro%'group by oggetto.descrizione, oggetto.fornitore"

    Nella colonna dove dovrebbe darmi il risultato:

    "Microsoft OLE DB Provider for ODBC Drivers error '80020009'
    Si sono verificati errori in un'operazione OLE DB composta da più passaggi. Controllare i singoli valori di stato OLE DB, se disponibili. Nessuna operazione eseguita.
    /boh.asp, line 0"

    Ora provo una query diretta...

  7. #7
    prova anche con

    SELECT oggetto.descrizione, oggetto.fornitore, AVG(carico.quantita) AS media
    FROM carico INNER JOIN oggetto ON carico.id_merce = oggetto.id_merce
    WHERE (oggetto.descrizione LIKE '%burro%' OR oggetto.fornitore LIKE '%burro%')
    GROUP BY oggetto.descrizione, oggetto.fornitore

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.