Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    140

    INNER JOIN e risultati unici

    Ciao ho questa query
    SELECT * FROM tab_utenti ti INNER JOIN tab_immagini tim ON ti.id_utente=tim.id_utente WHERE ti.tipo_img='0' ORDER BY tu.id_utente

    in questo modo però mi seleziona tutte le immagini relative ad ogni utente mentre io voglio 1 sola immagine (la prima che trova) per utente...mi dite come faccio ?

  2. #2
    $sql_utenti = "SELECT * FROM tab_utenti WHERE ti.tipo_img='0' ORDER BY id_utente";

    $prendi_utenti = @mysql_query($sql_utenti, $connessione)
    or die("Impossibile prelevare i dati degli utenti dal DB");

    while ($riga_utenti = @mysql_fetch_assoc($prendi_utenti))
    {
    //Prendiamo tutti i dati dell'utente
    $id_utente = $riga_utenti['id_utente'];
    $nome_utente = stripslashes($riga_utenti['nome']);
    ...............

    //A questo punto prendiamo per l'utente, l'immagine

    $sql_immagine = "SELECT * FROM tab_immagini
    WHERE id_utente=$id_utente
    LIMIT 1";
    $prendi_immagine = @mysql_query($sql_immagine, $connessione)
    or die("Impossibile prelevare l'immagine");

    if ($riga_immagine = @mysql_fetch_assoc($prendi_immagine))
    {
    //Vuol dire che all'utente è associata almeno un'immagine

    //A questo punto puoi prendere tutti i dati dell'immagine
    $id_immagine = $riga_immagine['id_immagine'];
    ..........
    }
    else
    {
    //Se si è qui vuol dire che all'utente non è associata alcuna immagine
    }
    }


    non sono solo sicuro se LIMIT 1 va bene così o se si scrive LIMIT(1,1)

    Ciao.

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.