MySQL में हाइफ़न से अलग दो संख्याओं वाले स्ट्रिंग (जैसे '10-20') से पहली और दूसरी संख्या निकालकर उनका न्यूनतम और अधिकतम खोजने के लिए SUBSTRING_INDEX() के साथ MIN()/MAX() का उपयोग किया जाता है।
उदाहरण के लिए टेबल बनाना
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Value VARCHAR(100)
);
डेटा डालना
mysql> INSERT INTO DemoTable(Value) VALUES('10-20'), ('200-100'), ('780-235');
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट
+----+---------+ | Id | Value | +----+---------+ | 1 | 10-20 | | 2 | 200-100 | | 3 | 780-235 | +----+---------+
पहली संख्या का न्यूनतम और दूसरी संख्या का अधिकतम
mysql> SELECT MIN(SUBSTRING_INDEX(Value, '-', 1)), MAX(SUBSTRING_INDEX(Value, '-', -1)) FROM DemoTable;
आउटपुट
+-------------------------------------+--------------------------------------+ | MIN(SUBSTRING_INDEX(Value, '-', 1)) | MAX(SUBSTRING_INDEX(Value, '-', -1)) | +-------------------------------------+--------------------------------------+ | 10 | 235 | +-------------------------------------+--------------------------------------+
व्याख्या: SUBSTRING_INDEX(Value, '-', 1) पहले हाइफ़न से पहले का भाग (पहली संख्या)। SUBSTRING_INDEX(Value, '-', -1) अंतिम हाइफ़न के बाद का भाग (दूसरी संख्या)। नोट: स्ट्रिंग तुलना होती है; संख्यात्मक तुलना के लिए CAST(... AS UNSIGNED) उपयोग करें।