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

Ví dụ về TIMESTAMP () - MySQL

Trong MySQL, TIMESTAMP() hàm trả về giá trị datetime dựa trên / s đối số được truyền vào. Bạn có thể cung cấp một hoặc hai đối số. Nếu bạn cung cấp hai, nó sẽ thêm cái thứ hai vào cái đầu tiên và trả về kết quả.

Cú pháp

Bạn có thể sử dụng một trong hai hình thức sau:

TIMESTAMP(expr)
TIMESTAMP(expr1,expr2)

Đối số đầu tiên (exprexpr1 ) là một biểu thức ngày tháng hoặc ngày giờ. Đối số thứ hai (expr2 ) là một biểu thức thời gian. Nếu bạn cung cấp hai đối số, expr2 được thêm vào expr1 và kết quả là một giá trị ngày giờ.

Ví dụ 1 - Cung cấp Đối số "ngày tháng"

Trong ví dụ này, tôi cung cấp một biểu thức ngày tháng.

SELECT TIMESTAMP('1999-12-31');

Kết quả:

+-------------------------+
| TIMESTAMP('1999-12-31') |
+-------------------------+
| 1999-12-31 00:00:00     |
+-------------------------+

Vì vậy, kết quả là một giá trị datetime bất kể đối số của chúng ta là biểu thức date hay datetime.

Ví dụ 2 - Cung cấp Đối số "datetime"

Và đây là một ví dụ sử dụng biểu thức ngày giờ.

SELECT TIMESTAMP('1999-12-31 23:59:59');

Kết quả:

+----------------------------------+
| TIMESTAMP('1999-12-31 23:59:59') |
+----------------------------------+
| 1999-12-31 23:59:59              |
+----------------------------------+

Ví dụ 3 - Bao gồm Giây phân số

Bạn cũng có thể bao gồm một phần giây phân số lên đến micro giây (6 chữ số). Khi bạn làm điều này, kết quả cũng sẽ bao gồm phần đó.

SELECT TIMESTAMP('1999-12-31 23:59:59.999999');

Kết quả:

+-----------------------------------------+
| TIMESTAMP('1999-12-31 23:59:59.999999') |
+-----------------------------------------+
| 1999-12-31 23:59:59.999999              |
+-----------------------------------------+

Ví dụ 4 - Cung cấp 2 đối số

Dưới đây là một ví dụ sử dụng hai đối số. Như đã đề cập, cái thứ hai được thêm vào cái thứ nhất.

SELECT TIMESTAMP('1999-12-31', '12:30:45');

Kết quả:

+-------------------------------------+
| TIMESTAMP('1999-12-31', '12:30:45') |
+-------------------------------------+
| 1999-12-31 12:30:45                 |
+-------------------------------------+

Ví dụ 5 - Giá trị ‘thời gian’ lớn hơn

Loại dữ liệu thời gian có thể có phạm vi từ -838:59:59 thành 838:59:59 . Điều này là do nó không chỉ giới hạn ở việc thể hiện thời gian trong ngày. Nó cũng có thể được sử dụng để biểu thị thời gian đã trôi qua. Trong trường hợp này, chúng tôi sử dụng nó để thêm một số lượng lớn giờ vào giá trị ngày.

SELECT TIMESTAMP('1999-12-31', '400:30:45');

Kết quả:

+--------------------------------------+
| TIMESTAMP('1999-12-31', '400:30:45') |
+--------------------------------------+
| 2000-01-16 16:30:45                  |
+--------------------------------------+

Ví dụ 6 - Giá trị phủ định

Bạn có thể trừ đối số thứ hai khỏi đối số đầu tiên, đơn giản bằng cách thêm dấu trừ vào trước giá trị thứ hai.

SELECT TIMESTAMP('1999-12-31', '-400:30:45');

Kết quả:

+---------------------------------------+
| TIMESTAMP('1999-12-31', '-400:30:45') |
+---------------------------------------+
| 1999-12-14 07:29:15                   |
+---------------------------------------+

Ví dụ 7 - Sử dụng Ngày hiện tại

Nếu bạn muốn một dấu thời gian sử dụng ngày hiện tại, bạn có thể quan tâm hơn đến các hàm như NOW() , CURDATE() và thậm chí có thể là SYSDATE() (để biết sự khác biệt, hãy xem SYSDATE() so với NOW() ).

Tuy nhiên, TIMESTAMP() chức năng vẫn có thể là chức năng ưa thích của bạn trong một số trường hợp nhất định, chẳng hạn như nếu bạn muốn thêm giá trị thời gian vào ngày hiện tại.

SELECT 
    TIMESTAMP(CURDATE()) AS 'Today',
    TIMESTAMP(CURDATE(), '24:00:00') AS 'Tomorrow';

Kết quả:

+---------------------+---------------------+
| Today               | Tomorrow            |
+---------------------+---------------------+
| 2018-07-03 00:00:00 | 2018-07-04 00:00:00 |
+---------------------+---------------------+

Hàm TIMESTAMPADD ()

Bạn có thể sử dụng TIMESTAMPADD() chức năng để thêm một đơn vị được chỉ định vào giá trị ngày tháng hoặc thời gian. Hàm này cũng chấp nhận các đơn vị như ngày, tháng, năm, v.v.

Nếu bạn tìm thấy TIMESTAMP() quá hạn chế đối với nhu cầu của bạn, hãy xem TIMESTAMPADD() Ví dụ.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng kết nối liên tục PHP-MySQL để chạy blog WordPress

  2. Loại dữ liệu MySQL nào để sử dụng để lưu trữ các giá trị boolean

  3. Truy vấn nhiều cơ sở dữ liệu cùng một lúc

  4. Mac OS X - EnvironmentError:không tìm thấy mysql_config

  5. Cách bảo mật MySQL:Phần thứ hai