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

एक MySQL तालिका में अंतिम प्रविष्टि प्राप्त करें?

<घंटा/>

आप ORDER BY का उपयोग करके MySQL तालिका में अंतिम प्रविष्टि प्राप्त कर सकते हैं। पहला तरीका इस प्रकार है:

केस 1 :विवरण सीमा का उपयोग करना

SELECT * FROM yourTableName ORDER BY yourColumnName DESC LIMIT 1;

दूसरा तरीका इस प्रकार है:

केस 2 :MAX()

. का उपयोग करना
SET @anyVariableName = (SELECT MAX(yourColumnName) FROM yourTableName);
SELECT *FROM yourtableName WHERE yourColumnName = @anyVariableName;

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

mysql> create table lastEntryDemo
   -> (
   -> Id int NOt NULL AUTO_INCREMENT,
   -> Name varchar(30),
   -> Age int,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.71 sec)

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

mysql> insert into lastEntryDemo(Name,Age) values('Larry',24);
Query OK, 1 row affected (0.14 sec)

mysql> insert into lastEntryDemo(Name,Age) values('John',21);
Query OK, 1 row affected (0.19 sec)

mysql> insert into lastEntryDemo(Name,Age) values('David',22);
Query OK, 1 row affected (0.18 sec)

mysql> insert into lastEntryDemo(Name,Age) values('Bob',25);
Query OK, 1 row affected (0.20 sec)

mysql> insert into lastEntryDemo(Name,Age) values('Carol',29);
Query OK, 1 row affected (0.17 sec)

mysql> insert into lastEntryDemo(Name,Age) values('Mike',23);
Query OK, 1 row affected (0.14 sec)

mysql> insert into lastEntryDemo(Name,Age) values('Sam',20);
Query OK, 1 row affected (0.15 sec)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:

mysql> select *from lastEntryDemo;

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

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | Larry |   24 |
|  2 | John  |   21 |
|  3 | David |   22 |
|  4 | Bob   |   25 |
|  5 | Carol |   29 |
|  6 | Mike  |   23 |
|  7 | Sam   |   20 |
+----+-------+------+
7 rows in set (0.00 sec)

यहां ORDER BY का उपयोग करके अंतिम प्रविष्टि प्राप्त करने के लिए क्वेरी दी गई है।

केस 1 :विवरण सीमा

क्वेरी इस प्रकार है:

mysql> select *from lastEntryDemo order by Name desc limit 1;

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

+----+------+------+
| Id | Name | Age  |
+----+------+------+
| 7  | Sam  | 20   |
+----+------+------+
1 row in set (0.00 sec)

केस 2 :MAX()

. का उपयोग करना

क्वेरी इस प्रकार है:

mysql> set @MaxId = (select max(Id) from lastEntryDemo);
Query OK, 0 rows affected (0.00 sec)

mysql> select *from lastEntryDemo where Id = @MaxId;

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

+----+------+------+
| Id | Name | Age  |
+----+------+------+
| 7  | Sam  | 20   |
+----+------+------+
1 row in set (0.00 sec)

  1. Id और FileIDs वाली तालिका में प्रत्येक फ़ाइल प्रविष्टि की गिनती प्राप्त करने के लिए MySQL क्वेरी?

    आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FileID int) AUTO_INCREMENT=100;क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (1.36 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल (फाइलआईडी) मान (50) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित

  1. अंतिम निर्मित तालिका नाम (सबसे हाल का) प्राप्त करने के लिए MySQL क्वेरी?

    इसके लिए आप INFORMATION_SCHEMA.TABLES अवधारणा का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाएं। यह हमारी सबसे हाल की तालिका होगी - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.43 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - सम्मिलित करें DemoTable1323 मानों में (बॉब); क्वेरी ठीक है, 1 पंक्

  1. MySQL में किसी दिनांक का अंतिम सेकंड प्राप्त करें?

    MySQL में किसी तिथि का अंतिम सेकंड प्राप्त करने के लिए, INTERVAL कमांड का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.55 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable(JoiningDatetime) मानों में डालें (2019- 10-04 12:34:54);क्वेरी ठीक है, 1