Computer >> Máy Tính >  >> Lập trình >> MySQL

Truy vấn MySQL để tính toán ngày giữa hai ngày từ các cột khác nhau nhưng các hàng tương tự

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1471
   -> (
   -> EmployeeJoiningDate date,
   -> EmployeeRelievingDate date
   -> );
Query OK, 0 rows affected (0.57 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable1471 values('2018-06-21','2018-12-21');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1471 values('2017-01-19','2019-01-31');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1471 values('2015-12-31','2016-03-01');
Query OK, 1 row affected (0.11 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select * from DemoTable1471;

Điều này sẽ tạo ra kết quả sau -

+---------------------+-----------------------+
| EmployeeJoiningDate | EmployeeRelievingDate |
+---------------------+-----------------------+
| 2018-06-21          |          2018-12-21   |
| 2017-01-19          |          2019-01-31   |
| 2015-12-31          |          2016-03-01   |
+---------------------+-----------------------+
3 rows in set (0.00 sec)

Đây là truy vấn để tính số ngày giữa hai ngày -

mysql> select datediff(EmployeeRelievingDate,EmployeeJoiningDate) as EmployeeWorkDays from DemoTable1471;

Điều này sẽ tạo ra kết quả sau -

+------------------+
| EmployeeWorkDays |
+------------------+
|              183 |
|              742 |
|               61 |
+------------------+
3 rows in set (0.00 sec)