Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách nhận dữ liệu 1 giờ qua trong MySQL

Sẽ rất hữu ích khi lấy các bản ghi 1 giờ qua hoặc truy xuất các hàng 1 giờ qua để báo cáo và phân tích. Trong bài viết này, chúng ta sẽ xem xét cách lấy dữ liệu 1 giờ qua trong MySQL.


Cách nhận dữ liệu 1 giờ qua trong MySQL

Rất dễ dàng để chọn dữ liệu 1 giờ qua trong MySQL bằng mệnh đề INTERVAL. Giả sử bạn có bảng sau doanh số bán hàng (id, order_date, amount) .

mysql> create table sales(
         id int, 
         order_date datetime, 
         amount int);

mysql> insert into sales(id, order_date, amount)
      values(1, '2021-02-02 08:15:00',250),
      (2, '2021-02-02 08:30:00',150),
      (3, '2021-02-02 08:55:00',200),
      (4, '2021-02-02 09:15:00',125),
      (5, '2021-02-02 09:30:00',200),
      (6, '2021-02-02 09:45:00',250);

 mysql> select * from sales;
 +------+---------------------+--------+
 | id   | order_date          | amount |
 +------+---------------------+--------+
 |    1 | 2021-02-02 08:15:00 |    250 |
 |    2 | 2021-02-02 08:30:00 |    150 |
 |    3 | 2021-02-02 08:55:00 |    200 |
 |    4 | 2021-02-02 09:15:00 |    125 |
 |    5 | 2021-02-02 09:30:00 |    200 |
 |    6 | 2021-02-02 09:45:00 |    250 |
 +------+---------------------+--------+

Đây là SQL để hiển thị thời gian mới nhất bằng cách sử dụng now () chức năng.

mysql> select now();
 +---------------------+
 | now()               |
 +---------------------+
 | 2021-02-02 09:48:27 |
 +---------------------+

Đây là SQL để lấy dữ liệu 1 giờ qua trong MySQL.

mysql> select * 
       from sales 
       where order_date > now() - interval 1 hour;
 +------+---------------------+--------+
 | id   | order_date          | amount |
 +------+---------------------+--------+
 |    3 | 2021-02-02 08:55:00 |    200 |
 |    4 | 2021-02-02 09:15:00 |    125 |
 |    5 | 2021-02-02 09:30:00 |    200 |
 |    6 | 2021-02-02 09:45:00 |    250 |
 +------+---------------------+--------+

Trong truy vấn trên, chúng tôi chỉ chọn những hàng có order_date rơi vào khoảng thời gian 1 giờ qua. Chúng tôi sử dụng mệnh đề INTERVAL để dễ dàng rút ngắn khoảng thời gian 1 giờ so với thời điểm hiện tại có được bằng cách sử dụng now () chức năng.


Cách nhận dữ liệu giờ hiện tại trong MySQL

Đôi khi bạn có thể cần lấy bản ghi của giờ hiện tại trong MySQL. Đây là truy vấn SQL để truy xuất dữ liệu giờ hiện tại.

mysql> select * from sales 
       where date(order_date)=date(now()) 
        and hour(order_date)=hour(now());
 +------+---------------------+--------+
 | id   | order_date          | amount |
 +------+---------------------+--------+
 |    4 | 2021-02-02 09:15:00 |    250 |
 |    5 | 2021-02-02 09:30:00 |    250 |
 |    6 | 2021-02-02 09:45:00 |    250 |
 +------+---------------------+--------+

Trong truy vấn SQL ở trên, chúng tôi chỉ chọn những bản ghi có order_date các giá trị NGÀY và GIỜ của cột giống như giá trị của ngày giờ hiện tại. Chúng tôi sử dụng các hàm DATE và HOUR để nhận các giá trị ngày và giờ từ các giá trị ngày giờ.

Cần một công cụ báo cáo cho MySQL? Ubiq giúp dễ dàng trực quan hóa dữ liệu trong vài phút và theo dõi trong trang tổng quan thời gian thực. Thử nó ngay hôm nay!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL Workbench

  2. 10 sự thật và mẹo thú vị hàng đầu về MySQL

  3. Lấy lại quyền truy cập vào mật khẩu MySQL bị mất cho PHPMyAdmin trên WAMP

  4. Ứng dụng Android có thể kết nối trực tiếp với cơ sở dữ liệu mysql trực tuyến không

  5. SQLite - ĐẶT HÀNG BẰNG RAND ()