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

Discussione: mysql

  1. #1
    Utente di HTML.it L'avatar di lau.l
    Registrato dal
    Feb 2004
    Messaggi
    186

    mysql

    Ho un problema con una query con GROUP BY..
    Praticamente questa è il mio codice :

    <? $q_sel="SELECT DISTINCT * FROM sedute LEFT JOIN versioni USING(versione_id) WHERE sedute.prod_id='$prod_id' GROUP BY sedute.versione_id ";
    $r_sel=mysql_query($q_sel) or die ('Errore prima query');
    while($dr=mysql_fetch_assoc($r_sel)){?>

    <tr><td><? print $dr[nome_versione];?></td></tr>

    <tr bgcolor="#9F8047">
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">TIPO SEDUTA</font></td>
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">CODICE</font></td>
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">ALTEZZA</font></td>
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">PROFONDITA'</font></td>
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">LUNGHEZZA</font></td>
    <td><font color="#ffffff" size="3" face="Arial, Helvetica, sans-serif">ALTRI COMMENTI</font></td>
    </tr>

    <tr>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[tipo_seduta]);?></font></td>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[codice_seduta]);?></font></td>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[altezza]);?></font></td>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[profondita]);?></font></td>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[lunghezza]);?></font></td>
    <td><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print ($dr[altro]);?></font></td>
    <tr><td colspan="6"><hr color="#9F8047">
    </td></tr>
    <? }?>

    Il fatto è che non mi funziona il raggruppamento cioè il risultato è questo (tipo):

    versione 1

    TIPO SEDUTA CODICE ALTEZZA PROFONDITA' LUNGHEZZA ALTRI COMMENTI
    div. 3P 123 88 86 193

    --------------------------------------------------------------------------------


    VERSIONE 2
    TIPO SEDUTA CODICE ALTEZZA PROFONDITA' LUNGHEZZA ALTRI COMMENTI
    div. 2P 345 88 88 140

    --------------------------------------------------------------------------------


    VERSIONE 3
    TIPO SEDUTA CODICE ALTEZZA PROFONDITA' LUNGHEZZA ALTRI COMMENTI
    polt 567 55 55 55

    --------------------------------------------------------------------------------

    Ma nel mio database ho 2 prodotti nella versone 1 e me fa vedere 1 solo.
    Cosa c'è che non va??

  2. #2
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568

    Re: mysql

    Originariamente inviato da lau.l
    Ho un problema con una query con GROUP BY..
    Praticamente questa è il mio codice :

    [...]

    Ma nel mio database ho 2 prodotti nella versone 1 e me fa vedere 1 solo.
    Cosa c'è che non va??
    Se in una query chiedi di raggruppare per il numero della versione, non ti lamentare del fatto che mysql raggruppi per il numero della versione.
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  3. #3
    Utente di HTML.it L'avatar di lau.l
    Registrato dal
    Feb 2004
    Messaggi
    186
    Non mi sono spiegata......
    io vorrei che che mi scrivesse:

    versione1

    prodotto1.1
    prodotto1.2

    --------------
    versione2

    prodotto2.1

    --------------
    verione3

    prodotto3.1

    In cosa è sbagliata la mia query??

  4. #4
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    Tu vuoi fare un ORDER BY
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  5. #5
    Utente di HTML.it L'avatar di lau.l
    Registrato dal
    Feb 2004
    Messaggi
    186
    scusa puoi essere + chiaro???

  6. #6
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    query ORDER BY versione

    poi cicli i risultati e tieni una variabile per controllare la versione. Se cambia stampi anche il titolino "Versione n.etc"
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  7. #7
    Utente di HTML.it L'avatar di lau.l
    Registrato dal
    Feb 2004
    Messaggi
    186
    non ho capito bene il fatto di tenere una variabile per controllare la versione....
    che valore

  8. #8
    Codice PHP:
    $query "SELECT * FROM sedute LEFT JOIN versioni USING(versione_id) WHERE sedute.prod_id='$prod_id' ORDER BY sedute.versione_id ";
    $res =  @mysql_unbuffered_query($query);  

    $ver '';
    while( 
    $row = @mysql_fetch_array($res) ){
        if( 
    $ver != $row['nome_versione'] ){
            
    $ver $row['nome_versione'];
            echo 
    'Versione: '$ver'
    '
    ;
        }
        
    // stampa la tua scheda, che ne so.
    }
    @
    mysql_free_result($res); 

  9. #9
    Utente di HTML.it L'avatar di lau.l
    Registrato dal
    Feb 2004
    Messaggi
    186
    non funziona!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  10. #10
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    In che senso? Che errore dà?
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

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.