Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916

    problema con ciclo e top10

    ciao ho un problemino con una combinazione di codice:

    da un db A prendo tutti i dati di una tabella es 1,2,3 ecc

    poi faccio il ciclo nel quale ho anche un altro db B dove dico per ogni record del db A prelevami nel b i prezzi

    e mi risulta esempio
    1 -> 10 euro
    2 -> 20 euro
    eccetera

    e fin qua tutto ok...

    ora dovrei fare che il risultato del ciclo mi metta i primi 10 prezzi + alti!!

    come posso fare?

    grazie!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  2. #2
    sulla query del secondo db

    SELECT TOP 10 * FROM tabella WHERE quellochevuoi ORDER BY prezzo DESC

  3. #3
    quella query va bene se per ogni record del ciclo devi stampare un sotto ciclo con i primi 10 prezzi piu alti...dovrebbe essere quello che dici te...

    cmq invece di select top 10 * from, se ti serve solo il prezzo usa select top 10 prezzo from...

  4. #4
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    posto un po di codice così mi spiego meglio:

    codice:
    <%
    'PRIMO DB
    Set rs_cards = Server.CreateObject("ADODB.Recordset")
    rs_cardsSQL = "SELECT * FROM tb1 ORDER BY codice ASC"
    rs_cards.open rs_cardsSQL, MM_users_STRING, 0,3
    
    
    'CICLO
    do While NOT rs_cards.EOF
     
    'SECONDO DB
    Set rstot = Server.CreateObject("ADODB.Recordset")
    rstotSQL = "SELECT SUM(ITEMS_TOTAL) as TOT FROM ORDERS WHERE billing_notes LIKE '%-" & rs_cards.Fields.Item("store").Value & "-%'"
    rstot.open rstotSQL, MM_conn_db_STRING, 0,3
    
    'CHIUDO IL CICLO
    rstot.Close()
    Set rstot = Nothing
    
    rs_cards.MoveNext()
    loop
    %>
    ovviamente prima di chiudere il ciclo visualizzo i dati che mi servono!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  5. #5
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    forse è meglio fare una select unica all'inizio... ma non saprei come!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  6. #6
    mi fai un esempio di come deve venire fuori la stampa?

  7. #7
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    nel primo db ci sono i codici clienti

    es 2001,2002,2003 ecc

    nel secondo db cè la tabella orders dove ci sono gli ordini effettuati dai clienti

    dovrei avere una stampa con i 10 clienti che hanno acquistato di + e la somma delle cifre tipo:

    1
    codice cliente - 2003
    acquisti totali euro - 10.000

    2
    codice cliente - 2001
    acquisti totali euro - 9.000

    eccetera per 10 posizioni!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  8. #8
    inserisci una query nel database in cui metti in un campo l'id del cliente e nell'altro campo sum(items total)

    codice:
    select tb1.idcliente,sum(tb2.items_total) as tot from tabella_clienti tb1, tabella_ordini tb2 where tb1.idcliente=tb2.idcliente group by tb1.idcliente;
    (credo che venga fuori una cosa del genere)

    e poi nel tuo script fai una select top 10 * from tabQuery order by tot desc...è piu semplice


  9. #9
    Originariamente inviato da santino83
    quella query va bene se per ogni record del ciclo devi stampare un sotto ciclo con i primi 10 prezzi piu alti...dovrebbe essere quello che dici te...

    cmq invece di select top 10 * from, se ti serve solo il prezzo usa select top 10 prezzo from...
    io quello avevo capito ^^

  10. #10
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    ma non è un db con 2 tabelle...
    sono 2 db... :master:
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

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.