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

Cách NOW () hoạt động trong MariaDB

Trong MariaDB, NOW() là một hàm ngày và giờ được tích hợp sẵn để trả về ngày và giờ hiện tại.

Giá trị trả về được trả lại trong 'YYYY-MM-DD HH:MM:SS' hoặc YYYYMMDDHHMMSS.uuuuuu định dạng, tùy thuộc vào việc hàm được sử dụng trong ngữ cảnh chuỗi hay số.

Giá trị trả về được biểu thị theo múi giờ hiện tại.

Bạn cũng có tùy chọn chỉ định độ chính xác micro giây.

Cú pháp

Cú pháp như sau:

NOW([precision])

Trong đó precision là một đối số tùy chọn chỉ định độ chính xác micro giây.

Nó cũng có các từ đồng nghĩa sau:

CURRENT_TIMESTAMP
CURRENT_TIMESTAMP([precision])
LOCALTIME
LOCALTIME([precision])
LOCALTIMESTAMP
LOCALTIMESTAMP([precision])

Ví dụ

Đây là một ví dụ:

SELECT NOW();

Kết quả:

+---------------------+
| NOW()               |
+---------------------+
| 2021-05-09 10:12:39 |
+---------------------+

Ngữ cảnh dạng số

Khi NOW() được sử dụng trong ngữ cảnh số, kết quả là YYYYMMDDHHMMSS.uuuuuu định dạng.

Ví dụ:

SELECT
    NOW(),
    NOW() + 0;

Kết quả:

+---------------------+----------------+
| NOW()               | NOW() + 0      |
+---------------------+----------------+
| 2021-05-09 10:13:10 | 20210509101310 |
+---------------------+----------------+

Độ chính xác

Dưới đây là một ví dụ về việc chỉ định độ chính xác micro giây:

SELECT
    NOW(6),
    NOW(6) + 0;

Kết quả:

+----------------------------+-----------------------+
| NOW(6)                     | NOW(6) + 0            |
+----------------------------+-----------------------+
| 2021-05-09 10:13:30.619522 | 20210509101330.619522 |
+----------------------------+-----------------------+

Giá trị tối đa cho độ chính xác micro giây là 6. Đây là điều xảy ra khi một số cao hơn được chuyển cho độ chính xác:

SELECT NOW(12);

Kết quả:

ERROR 1426 (42000): Too big precision 12 specified for 'current_timestamp'. Maximum is 6

Từ đồng nghĩa

Như đã thấy trong cú pháp ở trên, có rất nhiều từ đồng nghĩa với NOW() .

Dưới đây là một ví dụ sử dụng các từ đồng nghĩa khác nhau:

SELECT 
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP(),
    LOCALTIME,
    LOCALTIME(),
    LOCALTIMESTAMP,
    LOCALTIMESTAMP();

Kết quả (sử dụng đầu ra dọc):

  CURRENT_TIMESTAMP: 2021-05-09 10:24:53
CURRENT_TIMESTAMP(): 2021-05-09 10:24:53
          LOCALTIME: 2021-05-09 10:24:53
        LOCALTIME(): 2021-05-09 10:24:53
     LOCALTIMESTAMP: 2021-05-09 10:24:53
   LOCALTIMESTAMP(): 2021-05-09 10:24:53

Thêm vào Dấu thời gian Hiện tại

Có nhiều cách để thực hiện số học trên các giá trị ngày giờ trong MariaDB.

Dưới đây là một ví dụ về việc sử dụng toán tử cộng (+ ) để thêm 2 ngày vào ngày:

SELECT 
    NOW(),
    NOW() + INTERVAL 2 DAY;

Kết quả:

+---------------------+------------------------+
| NOW()               | NOW() + INTERVAL 2 DAY |
+---------------------+------------------------+
| 2021-05-09 10:17:39 | 2021-05-11 10:17:39    |
+---------------------+------------------------+

Cũng xem các hàm như DATE_ADD()ADDDATE() để có một cách thay thế để thêm vào ngày hiện tại.

Trừ ngày hiện tại

Dưới đây là một ví dụ về việc sử dụng toán tử trừ (- ) trừ đi 10 ngày kể từ ngày hiện tại:

SELECT 
    NOW(),
    NOW() - INTERVAL 10 DAY;

Kết quả:

+---------------------+-------------------------+
| NOW()               | NOW() - INTERVAL 10 DAY |
+---------------------+-------------------------+
| 2021-05-09 10:19:35 | 2021-04-29 10:19:35     |
+---------------------+-------------------------+

Xem các hàm như DATE_SUB()SUBDATE() để có một cách khác để trừ ngày hiện tại.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách CONVERT_TZ () hoạt động trong MariaDB

  2. Tối đa hóa hiệu quả truy vấn cơ sở dữ liệu cho MySQL - Phần một

  3. MariaDB 10.6 và NextCloud:Hàng COMPRESSED được mặc định chỉ đọc

  4. MariaDB CURRENT_TIME () được giải thích

  5. So sánh các sản phẩm cung cấp trên đám mây cụm Galera:Phần thứ nhất Amazon AWS