समाधान
ORDER BY CASE स्टेटमेंट का उपयोग करके कस्टम क्रम लागू करें।
उदाहरण
टेबल बनाएं:
mysql> CREATE TABLE DemoTable2039 (Name VARCHAR(20));
mysql> INSERT INTO DemoTable2039 VALUES ('John Doe'), ('John Smith'), ('Chris Brown'), ('Adam Smith'), ('David Miller');
कस्टम क्रम क्वेरी
'Smith' वाले नामों को अंत में रखें, फिर वर्णानुक्रम क्रम:
mysql> SELECT * FROM DemoTable2039
-> ORDER BY CASE WHEN Name LIKE '%Smith%' THEN 101 ELSE 100 END, Name;
परिणाम
+--------------+ | Name | +--------------+ | Chris Brown | | David Miller | | John Doe | | Adam Smith | | John Smith | +--------------+
व्याख्या: CASE एक्सप्रेशन 'Smith' वाले नामों को 101, बाकी को 100 असाइन करता है। फिर Name द्वारा क्रमबद्ध करता है।