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

IN मूल्य सूची द्वारा ऑर्डर करें

पोस्टग्रेज में 9.4 या बाद में, यह सरल और तेज़ है :

SELECT c.*
FROM   comments c
JOIN   unnest('{1,3,2,4}'::int[]) WITH ORDINALITY t(id, ord) USING (id)
ORDER  BY t.ord;
  • WITH ORDINALITY पोस्टग्रेज 9.4 में पेश किया गया था।

  • सबक्वेरी की कोई आवश्यकता नहीं है, हम सीधे टेबल की तरह सेट-रिटर्निंग फ़ंक्शन का उपयोग कर सकते हैं। (उर्फ "टेबल-फ़ंक्शन"।)

  • ARRAY कंस्ट्रक्टर के बजाय सरणी में हाथ लगाने के लिए एक स्ट्रिंग शाब्दिक कुछ क्लाइंट के साथ लागू करना आसान हो सकता है।

  • सुविधा के लिए (वैकल्पिक रूप से), उस कॉलम नाम को कॉपी करें जिसमें हम शामिल हो रहे हैं (id उदाहरण में), इसलिए हम एक संक्षिप्त USING . के साथ जुड़ सकते हैं परिणाम में शामिल होने वाले कॉलम का केवल एक उदाहरण प्राप्त करने के लिए क्लॉज।

  • किसी भी . के साथ काम करता है निवेष का प्रकार। यदि आपका कुंजी कॉलम text . प्रकार का है , कुछ ऐसा प्रदान करें जैसे '{foo,bar,baz}'::text[]

विस्तृत विवरण:

  • तत्व संख्या के साथ PostgreSQL unnest()


  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. एक्सटेंशन pg_trgm से % ऑपरेटर का उपयोग कैसे करें?

  3. Postgres स्कीमा का SQLAlchemy समर्थन

  4. Django माइग्रेशन के साथ हटाए गए तालिका को फिर से कैसे बनाएं?

  5. LIMIT लागू होने से पहले परिणाम गणना प्राप्त करने का सबसे अच्छा तरीका