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

mysql क्वेरी PHP:मैं चाहता हूं कि एक विशिष्ट आइटम पहले हो और फिर बाकी वस्तुओं को सॉर्ट करें

आप निम्न में से किसी एक के द्वारा ऑर्डर कर सकते हैं

order by owner <> 'Jan'
order by owner = 'Jan' desc
order by case when owner = 'Jan' then 0 else 1 end
order by if(owner = 'Jan',0,1)

owner = 'Jan' 1 . पैदा करता है True . के लिए और 0 False . के लिए , इसलिए क्यों desc

साथ ही, चूंकि आपको पहले चार को छोड़कर शेष पंक्तियों के क्रम की परवाह नहीं है, इसलिए आप शेष जनवरी पंक्तियों को भी जारी रख सकते हैं।

इसे आजमाएं:

SELECT 
    id, car_name, owner
FROM
    ((SELECT 
        0 x, t.*
    FROM
        your_table t
    ORDER BY owner <> 'Jan' , id
    LIMIT 4) UNION ALL (SELECT 
        *
    FROM
        (SELECT 
        1 x, t.*
    FROM
        your_table t
    ORDER BY owner <> 'Jan' , id
    LIMIT 4 , 1000) t
    ORDER BY id)) t
ORDER BY x , id;

केवल तभी काम करता है जब जनवरी में 4 या अधिक पंक्तियाँ हों।

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. mySQL श्रेणी में चयन करें

  2. mysql में md5 हैश को कुशलतापूर्वक संग्रहीत करने के लिए सर्वोत्तम अभ्यास

  3. मैक ओएस एक्स पर MySQL पायथन स्थापित करना

  4. MySQL बहुस्तंभ प्राथमिक कुंजी

  5. mysql में फ़ील्ड से डुप्लिकेट शब्द हटाएं