MySQL में दो कॉलम के मानों का विभाजन करके परिणाम नए कॉलम में दिखाना
MySQL में दो न्यूमेरिक कॉलम को विभाजित (divide) करने के लिए साधारण विभाजन ऑपरेटर / का उपयोग करें और परिणाम को AS एलियास के साथ नए कॉलम में प्रदर्शित करें।
उदाहरण के साथ पूर्ण कार्यान्वयन
टेबल बनाना
mysql> CREATE TABLE DemoTable719 (
FirstNumber INT,
SecondNumber INT
);
रिकॉर्ड डालना
mysql> INSERT INTO DemoTable719 VALUES(20, 10), (500, 50), (400, 20);
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable719;
आउटपुट:
+-------------+--------------+
| FirstNumber | SecondNumber |
+-------------+--------------+
| 20 | 10 |
| 500 | 50 |
| 400 | 20 |
+-------------+--------------+
3 rows in set (0.00 sec)
विभाजन परिणाम के साथ SELECT
mysql> SELECT *, FirstNumber / SecondNumber AS Result FROM DemoTable719;
आउटपुट:
+-------------+--------------+---------+
| FirstNumber | SecondNumber | Result |
+-------------+--------------+---------+
| 20 | 10 | 2.0000 |
| 500 | 50 | 10.0000 |
| 400 | 20 | 20.0000 |
+-------------+--------------+---------+
3 rows in set (0.00 sec)
व्याख्या:
FirstNumber / SecondNumber- फ्लोटिंग-पॉइंट विभाजन करता हैAS Result- परिणाम कॉलम को नाम देता है- परिणाम डिफ़ॉल्ट रूप से DECIMAL होता है (सटीकता बनी रहती है)
पूर्णांक विभाजन (DIV ऑपरेटर)
SELECT *, FirstNumber DIV SecondNumber AS IntResult FROM DemoTable719;
आउटपुट: 2, 10, 20 (दशमलव भाग हटा दिया जाता है)
मॉड्यूलो (शेष)
SELECT *, FirstNumber % SecondNumber AS Remainder FROM DemoTable719;
या MOD(FirstNumber, SecondNumber)
शून्य से विभाजन संभालना
SELECT *,
CASE
WHEN SecondNumber = 0 THEN NULL
ELSE FirstNumber / SecondNumber
END AS SafeResult
FROM DemoTable719;
या NULLIF(SecondNumber, 0) का उपयोग करें:
SELECT *, FirstNumber / NULLIF(SecondNumber, 0) AS SafeResult FROM DemoTable719;
दशमलव स्थान नियंत्रित करना
-- 2 दशमलव स्थान
SELECT *, ROUND(FirstNumber / SecondNumber, 2) AS Result FROM DemoTable719;
-- FORMAT के साथ (कॉमा सेपरेटर)
SELECT *, FORMAT(FirstNumber / SecondNumber, 2) AS Result FROM DemoTable719;
सीधे UPDATE में उपयोग
ALTER TABLE DemoTable719 ADD COLUMN Result DECIMAL(10,4);
UPDATE DemoTable719 SET Result = FirstNumber / SecondNumber;