sql >> Databasteknik >  >> RDS >> PostgreSQL

Visa Sista barnet i React Iteration

Du kan prova följande:

Message.where(to: current_user.id)
       .order(:created_at)
       .group_by(&:user_id)
       .map{|_, x| x.last}

Detta bör ge det sista meddelandet (av created_at ) från varje user_id .

Så länge du använder Postgresql kan du prova distinct on tillvägagångssätt:

Message.where(to: current_user.id)
       .order(user_id: :asc, created_at: :desc)
       .select('distinct on (user_id) *')



  1. WildFly jdbc-anslutning med Oracle

  2. Behöver jag verkligen göra mysql_close()

  3. Räkna rader i partitionen med Order By

  4. MySQL Gå med och få alla relationer även om 0