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

कैसे सुनिश्चित करें कि mysql में दिए गए परिणाम में एक रिकॉर्ड हमेशा शीर्ष पर है?

ORDER BY (p.id=14) DESC, (p.mPrice=p.vPrice) DESC

p.id=14 रिटर्न 1 अगर शर्त सही है, 0 अन्यथा, इसलिए अवरोही क्रमित करना वांछित पंक्ति को शीर्ष पर लाता है।

किसी संख्या को तुलना से लौटाना एक MySQL सुविधा है, मानक SQL के साथ आप लिखेंगे:

ORDER BY CASE WHEN (p.id=14) THEN 0 ELSE 1 END,
         CASE WHEN (p.mPrice=p.vPrice) THEN 0 ELSE 1 END

मुझे UNION . की तुलना में इसे पढ़ना आसान लगता है , और यह बेहतर प्रदर्शन कर सकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CodeIgniter में डेटाबेस एरर हैंडलिंग प्रॉब्लम

  2. 'सेकंड पहले', 'मिनट पहले', 'घंटे पहले' आदि के रूप में तारीख की गणना करना और दिखाना

  3. आरक्षण प्रणाली के लिए अगली उपलब्ध तिथि खोजने के लिए SQL क्वेरी में सहायता करें

  4. पायथन MySQL सम्मिलित काम नहीं कर रहा

  5. मैसकल क्वेरी जो श्रेणी ट्री लौटाती है