Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Query SUM MySQL

  1. #1
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692

    Query SUM MySQL

    Ciao, ancora io...

    Ho questa query:

    codice:
    strSQL = " SELECT *, "
       strSQL = strSQL & " SUM(FATTURE_PASSIVE.TOT_IMPONIBILE) AS strTOTALEIMPONIBILE, "
       strSQL = strSQL & " SUM(FATTURE_PASSIVE.TOT_IVA) AS strTOTALEIVA, "
       strSQL = strSQL & " FORNITORI.FORNITORE AS FORN "
       strSQL = strSQL & " FROM FATTURE_PASSIVE "
       strSQL = strSQL & " INNER JOIN "
       strSQL = strSQL & " FORNITORI ON FORNITORI.ID_FORNITORE = FATTURE_PASSIVE.ID_FORNITORE "
       strSQL = strSQL & " WHERE "
       strSQL = strSQL & " FATTURE_PASSIVE.ID_GESTIONE_RIFERIMENTO = " & ID_GEST & " "
       strSQL = strSQL & " AND FATTURE_PASSIVE.GESTIONE_RIF = " & ID_COD & " "
    Però la somma di strTOTALEIMPONIBILE non corrisponde... invece di 136.38 restituisce 193.2 e la somma di strTOTALEIVA non corrisponde... invece di 18.47 restituisce 38.64

    ???
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  2. #2
    Che database usi ???

    Attento a come tratti i valori NULL nelle INNER JOIN e nelle condizioni WHERE . . .

  3. #3

  4. #4
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Grazie, ho risolto facendo una seconda query.... che ce voi fà...
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  5. #5
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Ho fatto la seconda query che è questa:

    codice:
       SQL = " SELECT *, "
       SQL = SQL & " SUM(TOT_IMPONIBILE) AS strTOTALEIMPONIBILE, "
       SQL = SQL & " SUM(TOT_IVA) AS strTOTALEIVA "
       SQL = SQL & " FROM FATTURE_PASSIVE "
       SQL = SQL & " GROUP BY ID_FORNITORE "
       SQL = SQL & " ORDER BY ID_FORNITORE ASC "
    
    'ESECUZIONE QUERY
    Set objRs = Server.CreateObject("ADODB.Recordset")
    objRs.Open SQL, objconn
    
    If Not objRs.EOF Then
    Do while NOT objRs.EOF
    
    Response.Write objRs("strTOTALEIMPONIBILE") &"-----"
    Response.Write objRs("strTOTALEIVA")
    
    objRs.MoveNext
    Loop
    End if
    
    objRs.Close
    set objRs = nothing
    
    objconn.Close
    set objconn = nothing
    Ed estraggo i seguenti dati:

    45,86-----9,17-----55,03
    352,8-----70,56----423,36

    Come faccio per ottenere la somma delle colonne?, cioè:

    45,86 + 352,80 = 398.66
    9,17 + 70,56 = 79.73
    55,03 + 423,36 = 478.39

    Grazie...
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  6. #6
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    SQL = " SELECT *, "
    SQL = SQL & " SUM(TOT_IMPONIBILE) AS strTOTALEIMPONIBILE, "
    SQL = SQL & " SUM(TOT_IVA) AS strTOTALEIVA ",
    SQL = SQL & " (SUM(TOT_IMPONIBILE) + SUM(TOT_IVA)) as totale "
    SQL = SQL & " FROM FATTURE_PASSIVE "
    SQL = SQL & " GROUP BY ID_FORNITORE "
    SQL = SQL & " ORDER BY ID_FORNITORE ASC "



    io non so che ODBC usi,
    ma stai attento al casting di mysql con SUM....

  7. #7
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Grazie, utilizzo mysql...

    ma con il tuo suggerimento ottengo la somma della riga non della colonna: :master:

    45,86 + 9,17 = 55,03
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  8. #8
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    scusami è tardi...

    dovresti fare diveNtare la tua query un alias


    SELECT SUM(T.strTOTALEIMPONIBILE) from (tua query) as T

  9. #9
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Originariamente inviato da agenti
    scusami è tardi...

    dovresti fare diveNtare la tua query un alias


    SELECT SUM(T.strTOTALEIMPONIBILE) from (tua query) as T

    Non ho capito...
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  10. #10
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    SELECT
    SUM(T.strTOTALEIMPONIBILE) AS TOT1,SUM(T.strTOTALEIVA) AS TOT2
    from (SELECT ID_FORNITORE, SUM(TOT_IMPONIBILE) AS strTOTALEIMPONIBILE,
    SUM(TOT_IVA) AS strTOTALEIVA
    FROM FATTURE_PASSIVE GROUP BY ID_FORNITORE
    ) as T

    spero di non dire eresie...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.