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

पहले विशिष्ट फ़ील्ड मान द्वारा आदेश देना

MySQL FIELD समारोह

यदि आप सभी संभावित मानों के लिए पूर्ण छँटाई चाहते हैं:

SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core", "board", "other")

यदि आप केवल इस बात की परवाह करते हैं कि "कोर" पहले है और अन्य मान मायने नहीं रखते:

SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core") DESC

यदि आप पहले "कोर" और अन्य क्षेत्रों को सामान्य क्रम में क्रमबद्ध करना चाहते हैं:

SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core") DESC, priority

हालांकि, यहां कुछ चेतावनी हैं:

सबसे पहले, मुझे पूरा यकीन है कि यह mysql-only कार्यक्षमता है - प्रश्न MySQL को टैग किया गया है, लेकिन आप कभी नहीं जानते।

दूसरा, ध्यान दें कि कैसे FIELD() काम करता है:यह एक-आधारित अनुक्रमणिका . देता है मान का - FIELD(प्राथमिकता, "कोर") . के मामले में , यह 1 लौटाएगा यदि "कोर" मान है। यदि फ़ील्ड का मान सूची में नहीं है, तो यह शून्य लौटाता है . यही कारण है कि DESC आवश्यक है जब तक कि आप सभी संभावित मान निर्दिष्ट न करें।



  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_fetch_array() पैरामीटर 1 को संसाधन, बूलियन में दिए जाने की अपेक्षा करता है

  2. त्रुटि 1046 कोई डेटाबेस चयनित नहीं, कैसे हल करें?

  3. विशिष्ट आईडी मानों द्वारा MySQL आदेश

  4. एकल MySQL डेटाबेस को दूरस्थ पहुँच कैसे प्रदान करें

  5. स्कीमा () MySQL में फ़ंक्शन