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

MySQL में UPDATE करके मानों को एक विशिष्ट अधिकतम मान से ऊपर बढ़ने से कैसे रोकें? LEAST फ़ंक्शन

टेबल बनाएं

mysql> create table DemoTable (
    -> Value int
    -> );
Query OK, 0 rows affected (0.54 sec)

रिकॉर्ड्स डालें

mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values(150);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(180);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.14 sec)

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

mysql> select * from DemoTable;
+-------+
| Value |
+-------+
| 100   |
| 150   |
| 180   |
| 200   |
+-------+
4 rows in set (0.00 sec)

अधिकतम मान सीमित करके UPDATE करने का क्वेरी

mysql> set @value:=45;
Query OK, 0 rows affected (0.00 sec)
mysql> update DemoTable
    -> set Value = LEAST(value + @value, 200);
Query OK, 3 rows affected (0.21 sec)
Rows matched: 4  Changed: 3  Warnings: 0

फिर से जांचें

mysql> select * from DemoTable;
+-------+
| Value |
+-------+
| 145   |
| 195   |
| 200   |
| 200   |
+-------+
4 rows in set (0.00 sec)

व्याख्या:

  • @value:=45 - यूज़र-डिफ़ाइंड वेरिएबल में 45 सेट करें
  • LEAST(value + @value, 200) - दोनों में से छोटा मान चुनें
  • 100+45=145 (<200) → 145
  • 150+45=195 (<200) → 195
  • 180+45=225 (>200) → 200 (कैप्ड)
  • 200+45=245 (>200) → 200 (कैप्ड)

संबंधित: GREATEST() अधिकतम के लिए।

  1. - MySQL में विशिष्ट सेल की सामग्री कैसे अपडेट करें

    उदाहरण टेबल बनाएं: ); डेटा डालें: INSERT INTO DemoTable2029 VALUES (4, John, Brown); विशिष्ट सेल अपडेट करें Id=4 वाली पंक्ति का FirstName और LastName बदलें: WHERE Id = 4; परिणाम +------+-----------+----------+ | Id | FirstName | LastName | +------+-----------+----------+ | 1 | Chris |

  1. - MySQL में विशिष्ट मान से कम मान वाले रिकॉर्ड छोड़कर बाकी कैसे चुनें?

    WHERE क्लॉज का उपयोग निर्दिष्ट मान से बड़े मान वाले रिकॉर्ड प्राप्त करने के लिए: yourValue; उदाहरण insert into demo27(value) values(50), (500), (100), (400), (100), (800), (600); 500 से बड़े मान चुनना 500; +----+-------+ | id | value | +----+-------+ | 6 | 800 | | 7 | 600 | +----+-------

  1. - MySQL में विशिष्ट मान वाले कॉलम की संख्या कैसे गिनें?

    SUM() के साथ गणना बाइनरी मान (0/1) वाले कॉलम के लिए: select sum(value1+value2+value3) as `Total_Number_Of_1`, sum(value1 and value2 and value3) as `Total_Number_Of_Rows_With_1` from yourTableName; उदाहरण insert into demo36(value1,value2,value3) values(1,0,0), (1,0,1), (1,1,1), (0,1,0), (