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

MySQL में अंतिम इन्सर्ट की गई रो कैसे एक्सेस करें?


यदि आप कॉलम के साथ AUTO_INCREMENT का उपयोग कर रहे हैं, तो आप last_insert_id() मेथड का उपयोग कर सकते हैं। यह मेथड MySQL में अंतिम इन्सर्ट किए गए रिकॉर्ड की ID प्राप्त करता है।

सिंटैक्स निम्नलिखित है:

SELECT LAST_INSERT_ID();

उपरोक्त सिंटैक्स को समझने के लिए, आइए एक टेबल बनाते हैं। टेबल बनाने की क्वेरी निम्नलिखित है:

mysql> create table LastInsertedRow
    -> (
    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> UserName varchar(20),
    -> UserAge INT
    -> ); Query OK, 0 rows affected (0.56 sec)

INSERT कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें।

क्वेरी निम्नलिखित है:

mysql> insert into LastInsertedRow(UserName,UserAge) values('John',23); Query OK, 1 row affected (0.19 sec)
mysql> insert into LastInsertedRow(UserName,UserAge) values('Carol',24); Query OK, 1 row affected (0.16 sec)
mysql> insert into LastInsertedRow(UserName,UserAge) values('Bob',24); Query OK, 1 row affected (0.08 sec)
mysql> insert into LastInsertedRow(UserName,UserAge) values('Larry',26); Query OK, 1 row affected (0.09 sec)
mysql> insert into LastInsertedRow(UserName,UserAge) values('Maxwell',27); Query OK, 1 row affected (0.10 sec)
mysql> insert into LastInsertedRow(UserName,UserAge) values('David',22); Query OK, 1 row affected (0.10 sec)

SELECT स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें।

क्वेरी निम्नलिखित है:

mysql> select * from LastInsertedRow;

निम्नलिखित आउटपुट है:

+----+----------+---------+
| Id | UserName | UserAge |
+----+----------+---------+
|  1 | John     | 23      |
|  2 | Carol    | 24      |
|  3 | Bob      | 24      |
|  4 | Larry    | 26      |
|  5 | Maxwell  | 27      |
|  6 | David    | 22      |
+----+----------+---------+
6 rows in set (0.00 sec)

अंतिम इन्सर्ट की गई रो प्राप्त करने की क्वेरी निम्नलिखित है:

mysql> SELECT LAST_INSERT_ID();

निम्नलिखित आउटपुट है:

+------------------+
| LAST_INSERT_ID() |
+------------------+
| 6                |
+------------------+
1 row in set (0.00 sec)

यदि आप पूरी रो चाहते हैं, तो निम्नलिखित क्वेरी का उपयोग करें:

mysql> SELECT * FROM LastInsertedRow WHERE Id = (SELECT LAST_INSERT_ID());

निम्नलिखित आउटपुट है:

+----+----------+---------+
| Id | UserName | UserAge |
+----+----------+---------+
| 6  | David    | 22      |
+----+----------+---------+
1 row in set (0.05 sec)

  1. - MySQL क्वेरी से विशिष्ट पंक्ति कैसे खोजें

    WHERE क्लॉज का उपयोग करके विशिष्ट रिकॉर्ड प्राप्त करना MySQL में किसी तालिका से विशिष्ट पंक्ति प्राप्त करने के लिए WHERE क्लॉज का उपयोग किया जाता है। यह एक या अधिक शर्तों के आधार पर डेटा फ़िल्टर करता है। उदाहरण: टेबल निर्माण और डेटा प्रविष्टि CREATE TABLE DemoTable ( UserId INT, UserName V

  1. - MySQL में GROUP_CONCAT से सभी आइटम एक रो में कैसे प्राप्त करें?

    GROUP_CONCAT() से मल्टीपल रो को सिंगल रो में जोड़ना किसी कॉलम के सभी मानों को एक ही रो में, किसी सेपरेटर (जैसे /) से जोड़कर दिखाने के लिए GROUP_CONCAT() फंक्शन का उपयोग करें। टेबल बनाना और डेटा इन्सर्ट करना CREATE TABLE DemoTable1355 (Location TEXT); INSERT INTO DemoTable1355 VALUES(E:); INSERT IN

  1. - MySQL क्वेरी: निश्चित अंतिम स्ट्रिंग वर्ण के आधार पर क्रमबद्ध करें

    परिचय जब कॉलम मानों में हाइफ़न (-) से अलग सफ़िक्स हों (जैसे John-D, John-Smith), और आप उन सफ़िक्स के आधार पर क्रमबद्ध करना चाहते हैं, तो MySQL के स्ट्रिंग फंक्शन्स और CASE स्टेटमेंट का उपयोग किया जा सकता है। उदाहरण: टेबल बनाना और डेटा डालना ); Query OK, 0 rows affected (0.54 sec) INSERT INTO Dem