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

MySQL स्टेटमेंट में अलग-अलग पॉजिटिव और नेगेटिव नंबरों द्वारा ऑर्डर करें

SIGN का उपयोग कर सकते हैं सकारात्मक संख्याओं को शीर्ष पर क्रमबद्ध करने के लिए, फिर एबीएस वांछित एएससी/डीईएससी प्राप्त करने के लिए।

SELECT * FROM theTable
ORDER BY SIGN(col) DESC, ABS(col)

संपादित करें

जैसा कि नहुएल ने बताया, उपरोक्त 0 को सकारात्मक और नकारात्मक के बीच में क्रमबद्ध करेगा। इसके बजाय उन्हें सकारात्मक के साथ समूहित करने के लिए, आप CASE . का उपयोग कर सकते हैं इसके बजाय (या, यदि आपका कॉलम केवल पूर्णांक है, तो थोड़ा जादुई SIGN(col + 1) )

SELECT * FROM theTable
ORDER BY 
    CASE WHEN col >= 0 THEN 1 ELSE 2 END,
    ABS(col)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql:सबक्वेरी के साथ अपडेट करें,

  2. नोड js . के साथ mysql में json आउटपुट कैसे डालें

  3. MySQL विदेशी कुंजी जोड़ें

  4. MySQL के IF() फ़ंक्शन के लिए मानक विधि

  5. विदेशी कुंजी निर्भरताओं के साथ एकाधिक तालिकाओं में डेटा कैसे सम्मिलित करें (MySQL)