Visualizzazione dei risultati da 1 a 10 su 20

Hybrid View

  1. #1
    non l'ho provata ... ma, almeno come logica, mi sembra giusta
    indipendentemente dai capricci fuori standard di mysql

    codice:
    select *
    from
    (
      SELECT id_utente, MAX(data_ora_access) as max_data_ora_access 
      FROM tbl
      GROUP BY id_utente
    ) as q1
    INNER JOIN  tbl
    ON  q1.id_utente=tbl.id_utente
    AND q1.max_data_ora_access=tbl.data_ora_access
    WHERE tbl.paginavisitata='p1'
    Ultima modifica di sspintux; 29-11-2014 a 19:46

  2. #2
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Quote Originariamente inviata da sspintux Visualizza il messaggio
    non l'ho provata ... ma, almeno come logica, mi sembra giusta
    indipendentemente dai capricci fuori standard di mysql

    codice:
    select *
    from
    (
      SELECT id_utente, MAX(data_ora_access) as max_data_ora_access 
      FROM tbl
      GROUP BY id_utente
    ) as q1
    INNER JOIN  tbl
    ON  q1.id_utente=tbl.id_utente
    AND q1.max_data_ora_access=tbl.data_ora_access
    WHERE tbl.paginavisitata='p1'
    sì esatto, questo approccio funziona, non l'ho provata ma è esattamente quello che serve, il problema è che la Group By così come interpretata da MySQL in maniera poco "restrittiva" se si seleziona un campo fuori dalle funzioni di aggregazione non c'è garanzia che la selezione del campo sia la medesima dell'istanza estratta dalla funzione di aggregazione, ma è pescata a caso nel set...a saperlo prima...

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.