MySQL में वर्तमान समय से पिछले 10 मिनट के भीतर के रिकॉर्ड प्राप्त करने के लिए DATE_SUB() और NOW() फंक्शन का उपयोग करें।
सिंटैक्स
SELECT * FROM yourTableName
WHERE yourDateTimeColumn >= DATE_SUB(NOW(), INTERVAL 10 MINUTE);
उदाहरण के साथ समझें
टेबल बनाएं:
CREATE TABLE users (
Id INT NOT NULL AUTO_INCREMENT,
UserName VARCHAR(20),
UserLastseen DATETIME,
PRIMARY KEY(Id)
);
रिकॉर्ड डालें (विभिन्न समय के साथ):
INSERT INTO users(UserName, UserLastseen) VALUES('Larry', '2019-01-15 02:45:00');
INSERT INTO users(UserName, UserLastseen) VALUES('Sam', NOW());
INSERT INTO users(UserName, UserLastseen) VALUES('Mike', '2019-01-15 02:30:00');
INSERT INTO users(UserName, UserLastseen) VALUES('Bob', '2019-01-15 15:02:00');
INSERT INTO users(UserName, UserLastseen) VALUES('David', '2019-01-15 14:55:00');
सभी रिकॉर्ड देखें:
SELECT * FROM users;
आउटपुट (मान लें वर्तमान समय 2019-01-15 15:05:00 है):
+----+----------+---------------------+
| Id | UserName | UserLastseen |
+----+----------+---------------------+
| 1 | Larry | 2019-01-15 02:45:00 |
| 2 | Sam | 2019-01-15 15:01:52 |
| 3 | Mike | 2019-01-15 02:30:00 |
| 4 | Bob | 2019-01-15 15:02:00 |
| 5 | David | 2019-01-15 14:55:00 |
+----+----------+---------------------+
पिछले 10 मिनट के रिकॉर्ड पाने का क्वेरी
SELECT * FROM users
WHERE UserLastseen >= DATE_SUB(NOW(), INTERVAL 10 MINUTE);
परिणाम (केवल हाल के 3 रिकॉर्ड):
+----+----------+---------------------+
| Id | UserName | UserLastseen |
+----+----------+---------------------+
| 2 | Sam | 2019-01-15 15:01:52 |
| 4 | Bob | 2019-01-15 15:02:00 |
| 5 | David | 2019-01-15 14:55:00 |
+----+----------+---------------------+
अन्य समय अंतराल के लिए
-- पिछले 1 घंटे
WHERE yourColumn >= DATE_SUB(NOW(), INTERVAL 1 HOUR)
-- पिछले 24 घंटे (1 दिन)
WHERE yourColumn >= DATE_SUB(NOW(), INTERVAL 1 DAY)
-- पिछले 7 दिन
WHERE yourColumn >= DATE_SUB(NOW(), INTERVAL 7 DAY)
-- पिछले 30 दिन
WHERE yourColumn >= DATE_SUB(NOW(), INTERVAL 30 DAY)
नोट
NOW()वर्तमान दिनांक-समय लौटाता हैDATE_SUB()दिनांक से अंतराल घटाता है- इंडेक्स प्रदर्शन के लिए
yourDateTimeColumnपर इंडेक्स बनाएं INTERVALके साथSECOND,MINUTE,HOUR,DAY,WEEK,MONTH,YEARउपयोग कर सकते हैं