इसके लिए लोग तरह-तरह के हथकंडे अपनाते हैं। मैंने गुगल किया और कुछ परिणामों का पता लगाया जिनमें से प्रत्येक अलग-अलग चाल का पालन करता है। उन पर एक नज़र डालें:
- MySQL में अल्फा न्यूमेरिक सॉर्टिंग
- MySQL में नेचुरल सॉर्टिंग
- संख्यात्मक का छँटाई अल्फ़ान्यूमेरिक मानों के साथ मिश्रित मान
- mySQL प्राकृतिक सॉर्ट
- MySQL में प्राकृतिक सॉर्ट करें
संपादित करें:
मैंने भविष्य के आगंतुकों के लिए प्रत्येक लिंक का कोड अभी जोड़ा है।
MySQL में अल्फा न्यूमेरिक सॉर्टिंग
दिए गए इनपुट
1A 1a 10A 9B 21C 1C 1D
अपेक्षित आउटपुट
1A 1C 1D 1a 9B 10A 21C
क्वेरी
Bin Way
===================================
SELECT
tbl_column,
BIN(tbl_column) AS binray_not_needed_column
FROM db_table
ORDER BY binray_not_needed_column ASC , tbl_column ASC
-----------------------
Cast Way
===================================
SELECT
tbl_column,
CAST(tbl_column as SIGNED) AS casted_column
FROM db_table
ORDER BY casted_column ASC , tbl_column ASC
दिए गए इनपुट
Table: sorting_test -------------------------- ------------- | alphanumeric VARCHAR(75) | integer INT | -------------------------- ------------- | test1 | 1 | | test12 | 2 | | test13 | 3 | | test2 | 4 | | test3 | 5 | -------------------------- -------------
अपेक्षित आउटपुट
-------------------------- -------------
| alphanumeric VARCHAR(75) | integer INT |
-------------------------- -------------
| test1 | 1 |
| test2 | 4 |
| test3 | 5 |
| test12 | 2 |
| test13 | 3 |
-------------------------- -------------
क्वेरी
SELECT alphanumeric, integer
FROM sorting_test
ORDER BY LENGTH(alphanumeric), alphanumeric
संख्यात्मक मानों की छँटाई अक्षरांकीय मान
दिए गए इनपुट
2a, 12, 5b, 5a, 10, 11, 1, 4b
अपेक्षित आउटपुट
1, 2a, 4b, 5a, 5b, 10, 11, 12
क्वेरी
SELECT version
FROM version_sorting
ORDER BY CAST(version AS UNSIGNED), version;
आशा है कि यह मदद करता है