Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 35

Discussione: ordinare

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274

    ordinare

    Questo codice:
    codice:
    do while not(rs.eof)
       If rs(10)<>"0" Then
       Totale=Totale+rs(10)
       Response.Write Totale & "
    "
       Else
       Response.write Rs(10) & "
    "
    End If
    rs.movenext
    loop
    Stampa a video dei valori. Esempio: 1,2,3,4,5...10

    Come faccio per capovolgere la stampa dei risultati? Esempio: 10...5,4,3,2,1

  2. #2
    Come selezioni i dati? Con un query SQL?
    Tipo:
    codice:
    sql = "SELECT * FROM tabella1 ORDER BY campo1 ASC" ' oppure DESC
    set rs = conn.execute(sql)
    if not rs.eof then
      do until rs.eof
        ' qui stampi i tuoi dati...
      rs.moveNext
      loop
    end if
    rs.close
    set rs = nothing

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    ho fatto così:

    codice:
    if not rs.eof then
     do until rs.eof 
       If rs(10)<>"0" Then
        Totale=Totale+rs(10)
        Response.Write Totale & "
    "
       Else
        Response.write Rs(10) & "
    "
       End if
      rs.moveNext
     loop
    end if
    ma il risultato è lo stesso.

    Quello che mi interessa ordinare è il risultato che stampa da questo codice.
    E questo, anche se preleva alcuni dati dal db, non è nel database.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    Questo è quello che stampa a video, in ordine dal primo all'ultimo:

    -3
    -9
    +5
    +1

    Io vorrei stampare così, in ordine dall'ultimo al primo:

    +1
    +5
    -9
    -3

    Si può fare?

  5. #5
    codice:
    if not rs.eof then
     do until rs.eof 
       If rs(10)<>"0" Then
        Totale=Totale+rs(10)
        stringa = Totale & "
    " & stringa
        'Response.Write Totale & "
    "
       Else
        stringa = Rs(10) & "
    " & stringa
        'Response.write Rs(10) & "
    "
       End if
      rs.moveNext
     loop
      response.write stringa
    end if

  6. #6
    il tuo

    Questo è quello che stampa a video, in ordine dal primo all'ultimo:

    -3
    -9
    +5
    +1


    deriva da dei progressivi, quindi in effetti sarebbe


    codice:
    rec# *** val *** progrs
      1  ***  -3 ***  -3
      2 ***   -6 ***  -9
      3 ***  +14 ***  +5
      4 ***   -4 ***  +1
    per cui, anche leggendo il recordset al contrario, avresti

    codice:
    rec# *** val *** progrs
      1  ***  -4 ***  -4
      2 ***  +14 *** +10
      3 ***   -6 ***  +4
      4 ***   -3 ***  +1
    solo l'ultimo è corretto!!

    mentre tu vuoi

    codice:
    rec# *** val *** progrs
      4 ***   -3 ***  +1
      3 ***   -6 ***  +4
      2 ***  +14 *** +10
      1  ***  -4 ***  -4

    è giusto il ragionamento?

    se è così, io credo che tu debba fare i conteggi come nel primo caso, ma - invece di mostrare subito -devi mettere il risultato in un array e poi mostrare l'array al contrario.


  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    hai capito perfettamente quello di cui necessito!

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    un aiutino?

  9. #9
    ri-ragionandoci, potresti anche lasciare più o meno così com'è, tranne

    1. partire da SUM("campo-importo") anziché da zero
    2. fare l'ordinamento inverso
    2a. in alternativa, lasciare lo stesso ordinamento, fare subito un .movelast e muoversi con .movepreviuos
    3. sottrarre anziché aggiungere il singolo importo al totale
    4. fare la sottrazione dopo la response.write del totale

    prova a fare da solo, hai tutte le indicazioni

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    il comando sum appartiene all'sql?

    sql = select sum("campo-importo") from database where...

    così??

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.