Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Ordinare un dato

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    99

    Ordinare un dato

    Salve, ho un problema con una query..

    codice:
    SELECT * FROM tabella1 WHERE tabella1.riferimento='".$id_utente."' 
    GROUP BY tipo_azione
    UNION SELECT * FROM tabella2 WHERE tabella2.id_utente1='".$id_utente."'
    ORDER BY data_post DESC;
    La query prende record da due tabelle e li ordina per data_post DESC (campo prensente in entrambe le tabelle).
    Ora della prima Select siccome posso avere record duplicati ma con campo data_post diversi, mi servirebbe prendere dei record duplicati l'ultimo inserito ( con data post più recente).

    Mentre così come l'ho postata la query prende il primo record dei duplicati (quindi il primo inserito) e non l'ultimo, l'order by finale lo fà dopo il GROUP BY giustamente.

    Come posso risolvere questo problema?

    Grazie a chi può aiutarmi

  2. #2
    I potizziamo che tu voglia estrarre riferimento, data_post; puoi estrerre il record con data post maggiore per ogni riferimento nel seguente modo:

    SELECT DISTINCT riferimento, data_post
    FROM tabella1 TB
    WHERE (riferimento,data_post)=(SELECT riferimento,MAX(data_post) FROM tabella1 WHERE riferimento=TB.riferimento GROUP BY riferimento)

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.