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

विशेष को छोड़कर, अन्य सभी के बाद शून्य मानों को क्रमबद्ध करना

आसान:

SELECT *
FROM   tasks
ORDER  BY (sort IS NOT DISTINCT FROM -1), sort;

कैसे?

Postgres में उचित boolean है टाइप करें (कुछ अन्य RDBMS के विपरीत)। आप इसके द्वारा किसी अन्य डेटा प्रकार की तरह ही ऑर्डर कर सकते हैं। और यह किसी भी अन्य डेटा प्रकार की तरह NULL हो सकता है। डिफ़ॉल्ट सॉर्ट क्रम है:

FALSE (0)
TRUE (1)
NULL

(sort IS NOT DISTINCT FROM -1) FALSE . का मूल्यांकन करता है -1 . को छोड़कर सभी मानों के लिए - जो TRUE . का मूल्यांकन करता है और पिछले प्रकार। बस sort जोड़ें द्वितीयक के रूप में ORDER BY आइटम।

समतुल्य विकल्प:

SELECT *
FROM   tasks
ORDER  BY (sort IS DISTINCT FROM -1) DESC, sort;

db<>फिडल यहाँ
पुराना sqlfiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle से PostgreSQL — कर्सर और ltree

  2. plpgsql चर का उपयोग करके n_distinct सेट करते समय त्रुटि

  3. माता-पिता को हटा दें यदि यह किसी अन्य बच्चे द्वारा संदर्भित नहीं है

  4. रूबी ऑन रेल्स एरर को कैसे हैंडल करें:कृपया पोस्टग्रेस्क्ल एडॉप्टर स्थापित करें:'जेम इंस्टाल एक्टिवरेकॉर्ड-पोस्टग्रेस्क्ल-एडेप्टर'

  5. PostgreSQL डंप फ़ाइल को Postgres डेटाबेस में कैसे पुनर्स्थापित करें?