How to search for a date in MySQL timestamp field?

MySQLMySQLi Database

You can use DATE() function from MySQL for this. Let us first create a table −

mysql> create table DemoTable
(
   StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   StudentAdmissionDate timestamp
);
Query OK, 0 rows affected (0.63 sec)

Insert some records in the table using insert command −

mysql> insert into DemoTable(StudentAdmissionDate) values('2011-01-12 12:34:43');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable(StudentAdmissionDate) values('2012-10-23 11:32:21');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable(StudentAdmissionDate) values('2001-02-14 05:12:01');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable(StudentAdmissionDate) values('2018-12-31 15:10:04');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable(StudentAdmissionDate) values('2019-04-16 11:04:10');
Query OK, 1 row affected (0.81 sec)

Following is the query to display all records from the table using select statement −

mysql> select *from DemoTable;

This will produce the following output −

+-----------+----------------------+
| StudentId | StudentAdmissionDate |
+-----------+----------------------+
| 1         | 2011-01-12 12:34:43  |
| 2         | 2012-10-23 11:32:21  |
| 3         | 2001-02-14 05:12:01  |
| 4         | 2018-12-31 15:10:04  |
| 5         | 2019-04-16 11:04:10  |
+-----------+----------------------+
5 rows in set (0.00 sec)

Here is the query to search for a date in timestamp field.

mysql> select *from DemoTable where date(StudentAdmissionDate)='2001-02-14';

This will produce the following output −

+-----------+----------------------+
| StudentId | StudentAdmissionDate |
+-----------+----------------------+
| 3         | 2001-02-14 05:12:01  |
+-----------+----------------------+
1 row in set (0.04 sec)

We can also search for a date between a given range:

mysql> select *from DemoTable where StudentAdmissionDate >='2012-01-01' and StudentAdmissionDate < '2019-12-01';

This will produce the following output −

+-----------+----------------------+
| StudentId | StudentAdmissionDate |
+-----------+----------------------+
| 2         | 2012-10-23 11:32:21  |
| 4         | 2018-12-31 15:10:04  |
| 5         | 2019-04-16 11:04:10  |
+-----------+----------------------+
3 rows in set (0.00 sec)
raja
Published on 29-Apr-2019 10:43:46
Advertisements