Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Selezionare dati tra due tabelle

    Salve.
    Ho circoscritto il mio problema in questa semplice select.

    Avendo due tabelle:

    1) lezioni

    *id
    *week
    *anno
    *lez
    *id_ins

    2) maestri

    *id
    *citta
    *nome
    *cognome
    *sesso

    Come posso impostare la mia select in modo che listi in ordine crescente tutti gli uomini (con rispettivi nome, cognome e città) che hanno fatto lezioni nella week e nell'anno scelto ? (es: week 1 anno 2013) <=== questi valori sono in una variabile $anno e $sett

    Per quanto riguarda il listing dei dati non dovrei avere difficoltà in quanto occorrebbe un semplice ciclo while. ma non saprei proprio come elaborare la select.
    Grazie in anticipo dell'aiuto.

  2. #2
    "ordine crescente" di cosa? di nome?

  3. #3

  4. #4
    se vuoi sare quante (e non quali) lezioni, puoi usare COUNT() abbinato a GROUP BY

  5. #5
    Grazie mille ho risolto

  6. #6
    ----------------------------------------------------
    nello spirito del forum, spiega come hai fatto (postando la soluzione), così aiuterai qualche altro forumista che dovesse avere lo stesso problema.
    ------------------------------------------------------------------------

  7. #7
    Certo mi fa molto piacere collaborare in questo forum.
    Prima di compilare il codice nella mia paginetta .php l'ho testato sull'SQL in questo modo.

    codice:
    SELECT maestri.*,lezioni.lez
    FROM lezioni INNER JOIN maestri ON lezioni.id_ins = maestri.id
    WHERE maestri.sesso = 'M' AND lezioni.anno = '2012' AND lezioni.week = '1'
    ORDER BY lezioni.lez ASC
    Da notare
    codice:
    lezioni.anno = '2012'
    &
    codice:
    AND lezioni.week = '1''
    dove il valore è stato inserito a mano

    In seguito ho debitamente eseguito il codice per renderlo leggibile dal server:

    Codice PHP:
    <?php
    require_once "config.php";
                                        
    connettiDb();
    $sql"SELECT maestri.*,lezioni.lez
    FROM lezioni INNER JOIN maestri ON lezioni.id_ins = maestri.id
    WHERE maestri.sesso = 'M' AND lezioni.anno = '
    $anno' AND lezioni.week = '$sett'
    ORDER BY lezioni.lez ASC"
    ;
    $dati=mysql_query($sql);
                      while(
    $row=mysql_fetch_array($dati)) { 
            echo
    '    <td style="vertical-align: top;">' $row[nome] . ' ' $row[cognome] . '

                      </td>
                      <td style="vertical-align: top;">' 
    $row[citta] . '

                      </td>
                      <td style="vertical-align: top;">' 
    $row[lez] . '
    '
    ;
                      }
    ?>
    Notare che adesso
    codice:
    lezioni.anno = '$anno' AND lezioni.week = '$sett'
    Sono coperte dalle necessarie variabili.

    Consiglio a tutti di testare prima tutte le query prima sul database e poi passare alle successive fasi.

    Lascio lo spazio a tutti approfondimenti del caso a chi volesse farlo.
    Grazie

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Originariamente inviato da amivan85
    Certo mi fa molto piacere collaborare in questo forum.
    Magari sarebbe anche bello che indicassi che la soluzione l'hai ottenuta grazie ad un altro forum

    http://forum.masterdrive.it/mysql-71...tabelle-71810/

    ... no ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Non sapevo che si potesse?

    Non è spam?

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.