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

ORDER BY क्लॉज में कस्टम ऑर्डर कैसे परिभाषित करें?

FIELD फ़ंक्शन का उपयोग करें:-

SELECT *
FROM articles
WHERE article.category IN (1, 57, 67, 78)
ORDER BY FIELD(article.category, 1, 67, 78, 57)

संपादित करें - यदि नहीं मिला तो यह 0 लौटाएगा, इसलिए यदि आप पहले 2 मानों को क्रमबद्ध करना चाहते हैं तो संभवतः केवल उन 2 को फ़ंक्शन में रखें लेकिन उलटा और अवरोही क्रमबद्ध करें।

SELECT *
FROM articles
WHERE article.category IN (1, 57, 67, 78)
ORDER BY FIELD(article.category, 67, 1) DESC

यह पहली श्रेणी को पहले रखेगा, श्रेणी 67 बाद में, उसके बाद कोई अन्य



  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. Mysql में एकाधिक खंडों का उपयोग करके पंक्तियों में हेरफेर करें

  3. कैसे समझें कि mysql त्रुटि संदेशों को कनेक्ट नहीं किया जा सकता है?

  4. PHP स्रोत कोड को जोड़ना और फॉर्म को MySQL डेटाबेस में जमा करना

  5. CSV को पार्स करें और Grails में Mysql डेटाबेस में निर्यात करें