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

    Selezionare massimo di una colonna

    Ho due tabelle cosi
    messaggi id data id_utente id_titolo
    utenti: id nome cognome

    dovrei trovare il massimo record dalla tabella messaggi in base alla data e id_titolo e dali ricavare l'utente dalla tabella utenti

    ho fatto cosi

    Codice PHP:
     SELECT u.nomeu.cognomeMAX(m.data_inserimento)AS data 
            FROM  utenti u
            INNER JOIN messaggi m ON m
    .id_utente=u.id 
            WHERE m
    .id_titolo=10 
    ma mi restituisce dalla tabella messa ok mentre sempre primo record della tabella utenti

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se ho capito bene

    codice:
    select u.nome,u.cognome,m.maggiore
    from utenti as u,
    	(select id_utente,max(data_inserimento) as maggiore
    	 from messaggi
    	 where id_titolo = 10
    	 group by id_utente
    	 order by maggiore desc limit 1) as m
    where u.id = m.id_utente

  3. #3
    Mi spiego meglio
    dalla tabella messaggi:

    id messaggio data id_titolo id_utente
    ------------------------------------------
    1 ciao 20/01/2010 12 1
    2 ciao 20/02/2010 13 1
    3 ciao 02/01/2011 12 2


    dovrei recuperare passandoli id_titolo qualunque quello che ha la data più recente poi da quel record recuperare tramite id_utente i dati dell'utente dalla tabella utenti

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Hai provato la query che ti ho scritto?

  5. #5
    Ho provato così

    Codice PHP:
     function Topic_lettura($id$partireda$x_pagina)
    {          
    $sql ='SELECT u.*, t.*, m.* 
    FROM messaggi m 
    INNER JOIN topics t ON m.id_titolo=t.id
    INNER JOIN utenti u ON (m.id_utente=u.id)
    WHERE t.id= \''
    .$id.'\'
    ORDER BY m.data_inserimento 
    LIMIT\''
    .$partireda.',\''.$x_pagina.'\'';
    $result $this->db_query($sql);
    return 
    $result
    ma da errore You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''0,'3'' at line 7

  6. #6
    Codice PHP:
     function Topic_lettura($id$partireda$x_pagina)
    {          
    $sql ="SELECT u.*, t.*, m.* 
    FROM messaggi m 
    INNER JOIN topics t ON m.id_titolo=t.id
    INNER JOIN utenti u ON (m.id_utente=u.id)
    WHERE t.id= 
    {$id}
    ORDER BY m.data_inserimento 
    LIMIT 
    {$partireda}{$x_pagina}";
    $result $this->db_query($sql);
    return 
    $result
    Prova così.
    Impara l'uso di {$var} nelle stringhe ("Benvenuto {$var}, ciao") al posto i fare la concatenazione classica con il "punto" ("Benvenuto ".$var.", ciao") così ti eviti confusioni con apici da aprire e chiudere e compagnia bella

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.