Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में IF-THEN-ELSE के साथ गणितीय संक्रियाएं कैसे करें?

MySQL में शर्तों के आधार पर गणितीय संक्रियाएं करने के लिए CASE स्टेटमेंट का उपयोग करें (IF-THEN-ELSE का विकल्प)।

टेबल निर्माण

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FruitName VARCHAR(100),
    FruitPrice INT
);

डेटा डालना

mysql> INSERT INTO DemoTable(FruitName, FruitPrice) VALUES('Orange', 250);
mysql> INSERT INTO DemoTable(FruitName, FruitPrice) VALUES('Banana', 100);
mysql> INSERT INTO DemoTable(FruitName, FruitPrice) VALUES('Apple', 150);
mysql> INSERT INTO DemoTable(FruitName, FruitPrice) VALUES('Pomegranate', 200);

सभी रिकॉर्ड देखें

mysql> SELECT * FROM DemoTable;
+----+-------------+------------+
| Id | FruitName   | FruitPrice |
+----+-------------+------------+
|  1 | Orange      |        250 |
|  2 | Banana      |        100 |
|  3 | Apple       |        150 |
|  4 | Pomegranate |        200 |
+----+-------------+------------+
4 rows in set (0.19 sec)

CASE के साथ गणितीय संक्रिया

mysql> SELECT Id, FruitName, FruitPrice,
    CASE 
        WHEN FruitName = 'Orange' THEN FruitPrice / 5
        ELSE FruitPrice 
    END AS OriginalPrice
    FROM DemoTable;

परिणाम

+----+-------------+------------+---------------+
| Id | FruitName   | FruitPrice | OriginalPrice |
+----+-------------+------------+---------------+
|  1 | Orange      |        250 |         50.00 |
|  2 | Banana      |        100 |         100   |
|  3 | Apple       |        150 |         150   |
|  4 | Pomegranate |        200 |         200   |
+----+-------------+------------+---------------+
4 rows in set (0.00 sec)

व्याख्या: केवल 'Orange' के लिए कीमत 5 से विभाजित होती है, बाकी फल मूल कीमत रखते हैं। CASE स्टेटमेंट जटिल शर्ती तर्क के लिए IF() से अधिक शक्तिशाली है।

  1. - MySQL में स्ट्रिंग को उल्टा (इनवर्ट) करना कैसे संभव है?

    MySQL REVERSE() फंक्शन स्ट्रिंग को उल्टा करना संभव बनाता है। इसका सिंटैक्स निम्नानुसार है: सिंटैक्स REVERSE(STR) यहाँ, STR वह स्ट्रिंग है जिसे हम उल्टा करना चाहते हैं। उदाहरण mysql> Select REVERSE(MySQL); +------------------+ | REVERSE(MySQL) | +------------------+ | LQSyM | +--------

  1. - क्या MySQL में UPDATE क्वेरी के साथ LIMIT उपयोग कर सकते हैं?

    हाँ, MySQL में UPDATE के साथ LIMIT उपयोग कर सकते हैं, लेकिन सीधे नहीं - सबक्वेरी की आवश्यकता होती है। सीधा LIMIT (काम नहीं करता) -- यह सिंटैक्स त्रुटि देगा UPDATE tblUpdateLimit SET name = Adam LIMIT 7; काम करने वाला तरीका: सबक्वेरी के साथ UPDATE tblUpdateLimit SET name = Adam WHERE id IN (

  1. PostgreSQL में MySQL के ORDER BY FIELD() का अनुकरण कैसे करें? PostgreSQL में MySQL के ORDER BY FIELD() का अनुकरण कैसे करें?

    MySQL का ORDER BY FIELD(col, val1, val2, ...) कस्टम क्रम में सॉर्ट करता है। PostgreSQL में CASE एक्सप्रेशन या ARRAY पोजीशन से समान परिणाम प्राप्त कर सकते हैं। उदाहरण डेटा CREATE TABLE country_demo (country_name VARCHAR(10)); INSERT INTO country_demo VALUES (IND), (US), (UK), (IND), (US); विधि 1: C