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

रेल के साथ विंडो फ़ंक्शन कॉलम पोस्टग्रेज करें

इसे आजमाएं:

Character.find_by_sql("SELECT *, rank() OVER (ORDER BY points DESC) FROM characters")

यह आपको कैरेक्टर ऑब्जेक्ट को रैंक विशेषता के साथ लौटाएगा, जैसा कि प्रलेखित है यहां ए> . हालाँकि, यह डेटाबेस-अज्ञेयवादी नहीं हो सकता है और यदि आप वस्तुओं के आसपास से गुजरते हैं तो यह गड़बड़ हो जाता है।

एक और (महंगा) समाधान है अपनी तालिका में एक रैंक कॉलम जोड़ना, और जब भी कोई रिकॉर्ड सहेजा या नष्ट किया जाता है, तो .order का उपयोग करके सभी रिकॉर्ड्स के रैंक की पुनर्गणना करने के लिए कॉलबैक प्राप्त करें।

संपादित करें:

एकल-रिकॉर्ड प्रश्नों के लिए उपयुक्त एक और विचार देखा जा सकता है यहां




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Windows10 पर PostGis में OSM फ़ाइल आयात करें

  2. नेस्टेड वस्तु पर jsonb क्वेरी पोस्टग्रेज करता है

  3. कैसे पता करें कि फ़ंक्शन का उपयोग कहां किया जा रहा है

  4. रेल 4 कस्टम 404 हेरोकू पर पोस्टग्रेस्क्ल कनेक्शन विफलता का कारण बनता है

  5. मूल क्वेरी के लिए दिनांक पैरामीटर पास करें