Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1

    Ordinare in base a prezzo*quantità

    Salve il codice sottostante mi seleziona le marche più vendute il mio problema però è ordinare 4 risultati con prezzoscontato*qt maggiore invece che per marca o prezzoscontato come ora.

    Set rs = Server.CreateObject("ADODB.Recordset")
    sql="SELECT SUM(carrello.quantita) AS qt, prodotti.marca,prodotti.prezzoscontato,prodotti.id categoria,prodotti.idsottocategoria FROM carrello,prodotti where carrello.idprodotto=prodotti.idprodotto GROUP BY prodotti.prezzoscontato,prodotti.marca,prodotti.id categoria,prodotti.idsottocategoria ORDER BY prodotti.prezzoscontato desc"
    Set rs=Conn.Execute(SQL)
    for kk=0 to 4
    if not rs.eof then
    sql2="SELECT categoria FROM categoria where idcategoria="&rs("idcategoria")
    Set rs2=Conn.Execute(SQL2)
    sql3="SELECT sottocategoria FROM sottocategoria where idsottocategoria="&rs("idsottocategoria")
    Set rs3=Conn.Execute(SQL3)
    %>
    <tr><td class="testoelenco"><%=UCASE(rs2("categoria")&"/"&rs3("sottocategoria")&"/"&rs("marca"))%></td><td class="testoora"><%=UCASE(rs("qt"))%></td><td class="testoora"><%=FormatNumber(rs("qt")*rs("prez zoscontato"),2)%></td></tr>
    <%rs.movenext
    end if
    next
    Grazie e ciao

    David

  2. #2
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    forse e dico forse

    sql="SELECT SUM(carrello.quantita) AS qt, prodotti.marca,prodotti.prezzoscontato,prodotti.id categoria,prodotti.idsottocategoria FROM carrello,prodotti where carrello.idprodotto=prodotti.idprodotto GROUP BY prodotti.prezzoscontato,prodotti.marca,prodotti.id categoria,prodotti.idsottocategoria ORDER BY SUM(carrello.quantita) desc"

  3. #3
    cosi me li ordina solo per quantità vendute,
    infatti se c'è un articolo che ha un prezzo totale maggiore ma meno venduto non è il primo della lista ma in ordine di quantità vendute

    ciao

  4. #4
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    allora speiga meglio quello che vuoi

    forse hai bisogno di creare un campo calcolato durante l'esecuzione della query ad esempio:

    ( prezzoscontato*qt ) as Mio_campo

    e poi ordinare in base a Mio_campo

    ma tu spiega meglio se puoi...

  5. #5
    esatto e quello che voglio che esca

  6. #6
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    sql="SELECT SUM(carrello.quantita) AS qt, (SUM(carrello.quantita) * prodotti.prezzoscontato) as Mio_campo, prodotti.marca,prodotti.prezzoscontato,prodotti.id categoria,prodotti.idsottocategoria FROM carrello,prodotti where carrello.idprodotto=prodotti.idprodotto GROUP BY prodotti.prezzoscontato,prodotti.marca,prodotti.id categoria,prodotti.idsottocategoria ORDER BY (SUM(carrello.quantita) * prodotti.prezzoscontato) DESC"


    prova ma secondo me va in errore...

  7. #7
    ottimo sembra funzionare

    grazie
    ciao david

  8. #8
    ho scoperto un piccolo problemino, se il prezzo del prodotto e differente viene considerato un nuovo record non va sommato alla marca, in questo modo non ho più la somma delle marche più vendute, ma quella dei prodotti della stessa marca con prezzo uguale.

    speriamo che ho spiegato bene

    ciao David

  9. #9
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    non è chiaro...

  10. #10
    ho una tabella prodotti,una carrello,
    devo fare una stastistica, elencare le marche più vendute indicando quantita e il prezzo totale del venduto.

    es.
    marca|qt| totale
    Nike |3 | 300
    AGLA |4 | 280
    ecc...

    i prodotti caricati naturalmente hanno prezzi diversi scarpe, felpe,ecc...
    le query di prima mi raggruppa si per marca ma soprattutto per prezzo.

    nel senso es.
    vendo 1 felpa nike, prezzo 60
    vendo 2 scarpa nike, prezzo 90
    vendo 1 t-shirt nike, prezzo 60

    dovrebbe venire:

    marca|qt| totale
    Nike |4| 300

    invece viene:

    marca|qt| totale
    Nike |2| 180
    Nike |2| 120

    spero che cosi si sia capito

    ciao David

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.