Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692

    Problema con query Inner Join

    Buona domenica.

    Eseguo questa query:

    codice:
    sql = "SELECT * FROM tbl_1" &_
              " INNER JOIN tbl_2" &_
              " ON tbl_2.CampoUno= tbl_1.CampoUno"
    set rs_pag = objconn.execute(sql)
    Ho tre records che rispondono alla condizione della query, ma visualizzo soltanto il primo dove sbaglio?:

    codice:
    rs_pag.MoveFirst()
    do while not rs_pag.eof
    
    Response.Write(rs_pag("Valore"))
    
    rs_pag.MoveNext()
    loop
    "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
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Nemmeno così funziona:

    codice:
    sql = "SELECT * FROM tbl_1 " &_
              " INNER JOIN tbl_2 " &_
              " ON tbl_2.CampoUno= tbl_1.CampoUno " &_
              " GROUP BY tbl_2.CampoUno "
    set rs_pag = objconn.execute(sql)
    
    rs_pag.MoveFirst()
    do while not rs_pag.eof
    
    Response.Write(rs_pag("Numeri"))
    
    rs_pag.MoveNext()
    loop
    In allegato struttura tabella, visualizzo soltanto del campo Numeri della tbl_2 i valori 220 e 0, invece di vedere 220-900-19 e 0-0-0
    Immagini allegate Immagini allegate
    "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

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


    codice:
    CampoUno    Numeri
    xxxx        200 - 900 - 19
    yyyy        0 - 0 - 0
    Visualizzo

    codice:
    CampoUno    Numeri
    xxxx        200
    yyyy        0
    "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

  4. #4
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Togli quel movefirst e quel move next.

    Un semplice do while not rs.Eof

    .........
    .........


    loop

    dovrebbe bastare.

  5. #5
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Grazie per aver risposto... con le modifiche suggerite la pagina va in loop infinito...

    Posto codice aggiornato ed allego le due tabelle:

    codice:
    <%
    
    sql = "SELECT * FROM tbl_poll_questions " &_
              " INNER JOIN tbl_poll_answers " &_
              " ON tbl_poll_answers.ANS_QUESTION = tbl_poll_questions.QUEST_ID " &_
              " GROUP BY tbl_poll_answers.ANS_QUESTION "
    set rs_pag = cn.execute(sql)
    
    rs_pag.MoveFirst()
    do while not rs_pag.eof
    
    response.write "Domanda:"& rs_pag("QUEST_QUESTION") &"
    "
    response.write "Voti totali:"& rs_pag("QUEST_TOTAL_VOTES") &"
    "
    response.write "Preferenze:"& rs_pag("ANS_VOTES") &"
    "
    
    
      rs_pag.MoveNext()
    loop
    
    rs_pag.Close
    Set rs_pag = Nothing
    
    %>
    Il risultato è:

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 220

    Domanda: yyyy
    voti totali: 0
    Preferenze: 0
    Ma la voce preferenze mi prende soltanto quella relative alle preferenze = Si...

    "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 orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    tabelle
    Immagini allegate Immagini allegate
    "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

  7. #7
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Il problema è nella query, infatti eliminando il group by ottengo:

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 220 (si)

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 901 (no)

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 19 (non so)


    Domanda: yyyy
    voti totali: 0
    Preferenze: 0 (si)

    Domanda: yyyy
    voti totali: 0
    Preferenze: 0 (no)

    Domanda: yyyy
    voti totali: 0
    Preferenze: 0 (non so)

    I dati sono giusti, ma è illeggibile... la domanda ripetuta enne volte così come i voti totali...

    Come posso ottenere una cosa del tipo?:

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 220 (si)
    Preferenze: 901 (no)
    Preferenze: 19 (non so)
    "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 Sandra
    Registrato dal
    May 2005
    Messaggi
    129

    ........

    fai due select......

    esempio qui

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

    Re: ........

    Originariamente inviato da Sandra
    fai due select......

    esempio qui
    Grazie, non ci avevo pensato... certo non è la presentazione che avevo in mente però se non si può altrimenti... 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

  10. #10
    Utente di HTML.it L'avatar di Sandra
    Registrato dal
    May 2005
    Messaggi
    129

    Prego

    Per ottenere questo
    Originariamente inviato da orcim
    Come posso ottenere una cosa del tipo?:

    Domanda: xxxx
    voti totali: 1140
    Preferenze: 220 (si)
    Preferenze: 901 (no)
    Preferenze: 19 (non so)
    lo script va benissimo.


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.