PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

प्रतिक्रिया पुनरावृत्ति में अंतिम बच्चा प्रदर्शित करें

आप निम्न कोशिश कर सकते हैं:

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

यह अंतिम संदेश देना चाहिए (created_at . द्वारा) ) प्रत्येक user_id . से ।

जब तक आप Postgresql का उपयोग कर रहे हैं, तब तक आप distinct on try आज़मा सकते हैं दृष्टिकोण:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL 9.2.1 . में लूपिंग ट्रिगर कॉल से कैसे बचें

  2. Windows पर PostgreSQL ODBC सेट करना

  3. ट्री स्ट्रक्चर वाले डेटाबेस को स्टोर और क्वेरी कैसे करें

  4. पोस्टग्रेएसक्यूएल के लिए पीजीपूल के लिए एक गाइड:भाग दो

  5. लापता तिथि के लिए डेटा के साथ तालिका भरें (पोस्टग्रेस्क्ल, रेडशिफ्ट)