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

MySQL में किसी तालिका से अंतिम रिकॉर्ड (शर्त पर) कैसे हटाएं?

<घंटा/>

किसी तालिका से अंतिम रिकॉर्ड (शर्त पर) को हटाने के लिए, आपको ORDER BY DESC का उपयोग LIMIT के साथ करना होगा

1. वाक्य रचना इस प्रकार है:

DELETE FROM yourTableName WHERE yourColumnName1=yourValue ORDER BY yourColumnName2 DESC LIMIT 1;

उपरोक्त सिंटैक्स तालिका से अंतिम रिकॉर्ड (शर्त पर) हटा देगा। यह कॉलम को अवरोही क्रम में क्रमबद्ध करता है और हटाने के लिए पहला तत्व चुनता है।

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

mysql> create table UserLoginTable
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> UserId int,
   -> UserLoginDateTime datetime,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.94 sec)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है:

mysql> insert into UserLoginTable(UserId,UserLoginDateTime) values(2,'2019-01-27 13:47:20');
Query OK, 1 row affected (0.19 sec)
mysql> insert into UserLoginTable(UserId,UserLoginDateTime) values(1,'2018-11-28 12:30:12');
Query OK, 1 row affected (0.16 sec)
mysql> insert into UserLoginTable(UserId,UserLoginDateTime) values(2,'2019-01-26 11:30:30');
Query OK, 1 row affected (0.20 sec)
mysql> insert into UserLoginTable(UserId,UserLoginDateTime) values(1,'2015-03-11 15:23:55');
Query OK, 1 row affected (0.21 sec)
mysql> insert into UserLoginTable(UserId,UserLoginDateTime) values(2,'2019-03-21 16:01:56');
Query OK, 1 row affected (0.23 sec)

अब आप सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित कर सकते हैं। क्वेरी इस प्रकार है:

mysql> select *from UserLoginTable;

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

+----+--------+---------------------+
| Id | UserId | UserLoginDateTime   |
+----+--------+---------------------+
|  1 |      2 | 2019-01-27 13:47:20 |
|  2 |      1 | 2018-11-28 12:30:12 |
|  3 |      2 | 2019-01-26 11:30:30 |
|  4 |      1 | 2015-03-11 15:23:55 |
|  5 |      2 | 2019-03-21 16:01:56 |
+----+--------+---------------------+
5 rows in set (0.00 sec)

तालिका से अंतिम रिकॉर्ड (शर्त पर) को हटाने की क्वेरी यहां दी गई है:

mysql> delete from UserLoginTable where UserId=2 ORDER BY UserLoginDateTime DESC LIMIT 1;
Query OK, 1 row affected (0.16 sec)

चयन कथन का उपयोग करके एक बार फिर तालिका रिकॉर्ड की जाँच करें। क्वेरी इस प्रकार है:

mysql> select *from UserLoginTable;

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

+----+--------+---------------------+
| Id | UserId | UserLoginDateTime   |
+----+--------+---------------------+
|  1 |      2 | 2019-01-27 13:47:20 |
|  2 |      1 | 2018-11-28 12:30:12 |
|  3 |      2 | 2019-01-26 11:30:30 |
|  4 |      1 | 2015-03-11 15:23:55 |
+----+--------+---------------------+
4 rows in set (0.00 sec)

अंतिम रिकॉर्ड अब UserId 2 वाली तालिका से हटा दिया गया है।


  1. मैं MySQL अस्थायी तालिका को कैसे हटा सकता हूं?

    जैसा कि हम जानते हैं कि यदि वर्तमान सत्र समाप्त हो जाता है तो MySQL अस्थायी तालिका हटा दी जाएगी। लेकिन अभी भी सत्र के बीच में हम अस्थायी तालिका को हटाना चाहते हैं, DROP कथन की मदद से हम अस्थायी तालिका को हटा सकते हैं। इसे निम्न उदाहरण की सहायता से समझा जा सकता है - उदाहरण इस उदाहरण में, हम SalesSum

  1. MySQL में टेबल का नाम कैसे बदलें?

    तालिका का नाम बदलने के लिए, परिवर्तन और नाम बदलें कमांड का उपयोग किया जा सकता है। इन्हें निम्नलिखित चरणों की सहायता से प्रदर्शित किया जाता है - सबसे पहले create कमांड की मदद से एक टेबल बनाई जाती है। यह इस प्रकार दिया गया है - ); Query OK, 0 rows affected (0.49 sec) तालिका का नाम बदलने का सिंटैक्

  1. MySQL से अंतिम 10 पंक्तियों का चयन कैसे करें?

    MySQL से अंतिम 10 पंक्तियों का चयन करने के लिए, हम सेलेक्ट स्टेटमेंट और लिमिट कॉन्सेप्ट के साथ एक सबक्वेरी का उपयोग कर सकते हैं। निम्नलिखित एक उदाहरण है। एक टेबल बनाना। );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.75 सेकंड) तालिका में रिकॉर्ड सम्मिलित करना। Last10RecordsDemo मान (7, सैम), (8, जस्टिन),