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

रेल 3 क्वेरी:'ऑर्डर' के साथ 'चयन' का उपयोग करते समय त्रुटि हो रही है

आप इस SQLFIDDLE से SQL का परीक्षण कर सकते हैं ।

केवल स्क्लाइट और माईस्क्ल ही इस उपयोग का समर्थन करते हैं, लेकिन अन्य नहीं करते हैं।

यह postgresql दस्तावेज़ देखें ।

इस सुविधा की एक सीमा यह है कि यूनियन, इंटरसेक्ट, या एक्सेप्ट क्लॉज के परिणाम पर लागू होने वाले क्लॉज द्वारा ऑर्डर केवल आउटपुट कॉलम नाम या संख्या निर्दिष्ट कर सकता है, अभिव्यक्ति नहीं।

आपके मामले के लिए, uniq का उपयोग करने की कोई आवश्यकता नहीं है, सभी उपयोगकर्ता आईडी पहले से ही अलग हैं, तो आप इसे क्यों नहीं आजमाते:

User.order("email DESC").pluck(:id)

डुप्लिकेट आईडी मानते हुए, आप डीबी के बजाय रूबी द्वारा यूनीक कर सकते हैं।

User.order("email DESC").pluck(:id).uniq

यह स्क्रिप्ट कभी भी विशिष्ट के साथ sql उत्पन्न नहीं करेगी। यह uniq प्लक के बाद एक Array#uniq है विधि।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पोस्टग्रेज सूचित करें कि तार्किक प्रतिकृति के साथ काम नहीं कर रहा है

  2. रूबी माइग्रेशन वापस लुढ़क गया लेकिन फिर से माइग्रेशन चलाते समय त्रुटि प्राप्त करें

  3. PostgreSQL में एक फ़ंक्शन से वापसी तालिका प्रकार

  4. क्या पोस्टग्रेज विंडो फंक्शन (एग्रीगेट) के साथ WHERE क्लॉज को VIEW में नीचे धकेल देगा?

  5. पोस्टग्रेज - दो कॉलम को एक आइटम में एकत्रित करें