यह आपके डेटाबेस डिज़ाइन में एक समस्या है। विषय संख्या को पूर्णांक के रूप में संग्रहित किया जाना चाहिए। यदि आप डिज़ाइन नहीं बदल सकते हैं, तो इसके बजाय इस क्वेरी को आज़माएँ:
SELECT title
FROM table1
ORDER BY CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(title, ' ', 2), ' ', -1)
AS UNSIGNED);
परिणाम:
'topic 1 foo' 'topic 2 bar' 'topic 10 baz'
परीक्षण डेटा:
DROP TABLE IF EXISTS table1;
CREATE TABLE table1 (title VARCHAR(100) NOT NULL);
INSERT INTO table1 (title) VALUES
('topic 1 foo'),
('topic 2 bar'),
('topic 10 baz');