×

Lấy ngày hiện tại với hàm CURDATE() trong MySQL

Trong quá trình làm việc với cơ sở dữ liệu MySQL, việc lấy thông tin ngày hiện tại là một tác vụ thường xuyên cần thiết. Hàm CURDATE() là một công cụ mạnh mẽ và hữu ích trong trường hợp này. Bài viết này sẽ giới thiệu chi tiết về cách sử dụng hàm CURDATE() để lấy ngày hiện tại trong MySQL.

Giới thiệu về hàm CURDATE()

CURDATE() là một hàm trong MySQL được sử dụng để trả về ngày hiện tại của hệ thống máy chủ dưới định dạng YYYY-MM-DD. Đây là một trong những hàm thời gian được sử dụng phổ biến nhất trong MySQL, giúp bạn có thể dễ dàng thao tác với dữ liệu thời gian.

Cú pháp

Cú pháp của hàm CURDATE() rất đơn giản và dễ nhớ:

CURDATE()

Hàm này không yêu cầu bất kỳ tham số nào.

Ví dụ sử dụng

1. Lấy ngày hiện tại

Để lấy ngày hiện tại, bạn chỉ cần thực thi câu lệnh sau:

SELECT CURDATE();

Kết quả trả về sẽ là ngày hiện tại của hệ thống máy chủ. Ví dụ, nếu ngày hiện tại là 2023-10-14, thì kết quả sẽ là:

2023-10-14

2. Sử dụng CURDATE() trong các câu lệnh khác

Hàm CURDATE() còn có thể được tích hợp vào các câu lệnh phức tạp hơn. Ví dụ, bạn có thể đặt nó trong câu lệnh INSERT để thêm bản ghi với ngày hiện tại.

INSERT INTO orders (order_date, customer_id, amount)
VALUES (CURDATE(), 1, 100.00);

Trong ví dụ này, giá trị ngày hiện tại được tự động chèn vào trường order_date.

3. Sử dụng với các điều kiện

Bạn cũng có thể sử dụng CURDATE() trong các mệnh đề WHERE để lọc dữ liệu. Ví dụ:

SELECT * FROM orders
WHERE order_date = CURDATE();

Câu lệnh này sẽ truy vấn tất cả các đơn hàng được đặt trong ngày hiện tại.

So sánh CURDATE() với một số hàm khác

MySQL còn cung cấp nhiều hàm khác để làm việc với thời gian, chẳng hạn như NOW(), CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP. Dưới đây là một số điểm khác biệt chủ yếu giữa CURDATE() và các hàm này:

  • NOW()CURRENT_TIMESTAMP: Trả về cả ngày và giờ hiện tại dưới định dạng YYYY-MM-DD HH:MM:SS.
  • CURRENT_DATE : Đây là một hàm đồng nghĩa với CURDATE(), cả hai đều trả về ngày hiện tại dưới định dạng YYYY-MM-DD.
  • CURRENT_TIME : Trả về giờ hiện tại dưới định dạng HH:MM:SS.

Kết luận

Hàm CURDATE() là một công cụ đơn giản nhưng cực kỳ hiệu quả trong MySQL để lấy ngày hiện tại. Với cú pháp dễ nhớ và tính ứng dụng cao, nó giúp bạn dễ dàng quản lý và thao tác với dữ liệu thời gian trong cơ sở dữ liệu. Bằng cách hiểu rõ và sử dụng thành thạo hàm này, bạn có thể cải thiện hiệu suất làm việc cũng như chất lượng của các hệ thống cơ sở dữ liệu mà bạn đang quản lý.

Comments