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

MySQL में डुप्लिकेट आईडी वाली टेबल को कैसे अपडेट करें? ORDER BY LIMIT

सिंटैक्स:

UPDATE yourTableName SET yourColumnName1 = yourValue WHERE yourColumnName2 = yourValue ORDER BY yourColumnName2 DESC LIMIT 1;

टेबल बनाएं

mysql> create table DemoTable (
    -> Id INT,
    -> Name VARCHAR(100)
    -> );
Query OK, 0 rows affected (0.61 sec)

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

mysql> insert into DemoTable values(1,'John');
Query OK, 1 row affected (0.41 sec)
mysql> insert into DemoTable values(2,'Chris');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values(2,'Robert');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values(2,'David');
Query OK, 1 row affected (0.18 sec)

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

mysql> select * from DemoTable;
+------+--------+
| Id   | Name   |
+------+--------+
| 1    | John   |
| 2    | Chris  |
| 2    | Robert |
| 2    | David  |
+------+--------+
4 rows in set (0.00 sec)

WHERE क्लॉज़ में एकाधिक फ़ील्ड्स के साथ SQL में टेबल अपडेट करने का क्वेरी

mysql> UPDATE DemoTable SET Name='Adam Smith' WHERE Id=2 ORDER BY Id DESC LIMIT 1;
Query OK, 1 row affected (0.28 sec)
Rows matched: 1  Changed: 1  Warnings: 0

फिर से जांचें

mysql> select * from DemoTable;
+------+------------+
| Id   | Name       |
+------+------------+
| 1    | John       |
| 2    | Adam Smith |
| 2    | Robert     |
| 2    | David      |
+------+------------+
4 rows in set (0.00 sec)

व्याख्या:

  • WHERE Id=2 - तीन पंक्तियां मेल खाती हैं
  • ORDER BY Id DESC - अवरोही क्रम (सभी समान Id, इसलिए क्रम अनिश्चित)
  • LIMIT 1 - केवल पहली मेल खाने वाली पंक्ति अपडेट करें
  • परिणाम: Id=2 की अंतिम सम्मिलित पंक्ति (David) अपडेट होकर 'Adam Smith' बनी

सावधानी: डुप्लिकेट आईडी वाली टेबल्स में ORDER BY LIMIT अप्रत्याशित हो सकता है। प्राथमिक कुंजी या अद्वितीय पहचानकर्ता का उपयोग करें।

  1. Java MySQL का उपयोग करके MySQL टेबल अपडेट करें Java MySQL का उपयोग करके MySQL टेबल अपडेट करें

    JDBC में PreparedStatement का उपयोग करके पैरामीटरीकृत अपडेट को सुरक्षित रूप से निष्पादित करें। टेबल बनाना और डेटा डालना CREATE TABLE DemoTable(Id INT, FirstName VARCHAR(40)); Query OK, 0 rows affected (0.62 sec) INSERT INTO DemoTable VALUES(100,Chris),(111,Mike),(121,Sam); अपडेट से पहले SELECT

  1. Java का उपयोग करके MySQL टेबल में रिकॉर्ड डालें Java का उपयोग करके MySQL टेबल में रिकॉर्ड डालें

    JDBC Statement या PreparedStatement का उपयोग करके Java एप्लिकेशन से MySQL में रिकॉर्ड डालें। टेबल बनाना CREATE TABLE DemoTable( Id INT, Name VARCHAR(30), CountryName VARCHAR(30), Age INT ); Query OK, 0 rows affected (0.66 sec) Java कोड (Statement) 0) { System.out.

  1. - MySQL: GROUP BY के साथ फील्ड कैसे अपडेट करें?

    समस्या MySQL सीधे UPDATE में GROUP BY का समर्थन नहीं करता। समाधान: ORDER BY LIMIT का उपयोग करें। उदाहरण टेबल बनाएं: ); डेटा डालें: INSERT INTO DemoTable2018 (EmployeeName, EmployeeSalary) VALUES (Chris, 25400); अपडेट क्वेरी Chris की पहली प्रविष्टि (EmployeeId के अनुसार) का वेतन बढ़ाएं: ORDER B