Hướng dẫn how to create date in mysql - cách tạo ngày trong mysql

9.1.3 & nbsp; Ngày và thời gian theo nghĩa đen

Giá trị ngày và thời gian có thể được biểu diễn trong một số định dạng, chẳng hạn như các chuỗi được trích dẫn hoặc là số, tùy thuộc vào loại chính xác của giá trị và các yếu tố khác. Ví dụ: trong các bối cảnh mà MySQL mong đợi một ngày, nó diễn giải bất kỳ '2015-07-21', '20150721'

{ d 'str' }
{ t 'str' }
{ ts 'str' }
0 nào như một ngày.

Phần này mô tả các định dạng chấp nhận được cho các chữ ngày và thời gian. Để biết thêm thông tin về các loại dữ liệu thời gian, chẳng hạn như phạm vi của các giá trị được phép, xem Phần & NBSP; 11.2, các loại dữ liệu ngày và thời gian.

Tiêu chuẩn SQL và ODBC ngày và thời gian theo nghĩa đen

SQL tiêu chuẩn yêu cầu nghĩa đen theo thời gian phải được chỉ định bằng cách sử dụng từ khóa loại và chuỗi. Không gian giữa từ khóa và chuỗi là tùy chọn.

DATE 'str'
TIME 'str'
TIMESTAMP 'str'

MySQL nhận ra nhưng, không giống như SQL tiêu chuẩn, không yêu cầu từ khóa loại. Các ứng dụng phải tuân thủ tiêu chuẩn nên bao gồm từ khóa loại cho các chữ theo thời gian.

MySQL cũng nhận ra cú pháp ODBC tương ứng với cú pháp SQL tiêu chuẩn:

{ d 'str' }
{ t 'str' }
{ ts 'str' }

MySQL sử dụng các từ khóa loại và các công trình ODBC để tạo ra các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
1,
{ d 'str' }
{ t 'str' }
{ ts 'str' }
2 và
{ d 'str' }
{ t 'str' }
{ ts 'str' }
3, bao gồm một phần phần phân đoạn kéo dài nếu được chỉ định. Cú pháp
{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 tạo ra giá trị
{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 trong MySQL vì
{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 có phạm vi tương ứng chặt chẽ hơn với loại SQL
{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 tiêu chuẩn, có phạm vi một năm từ
{ d 'str' }
{ t 'str' }
{ ts 'str' }
8 đến
{ d 'str' }
{ t 'str' }
{ ts 'str' }
9. (Phạm vi MySQL
{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 năm là
mysql> SELECT DATE'2012@12@31';
+------------------+
| DATE'2012@12@31' |
+------------------+
| 2012-12-31       |
+------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)
1 đến
mysql> SELECT DATE'2012@12@31';
+------------------+
| DATE'2012@12@31' |
+------------------+
| 2012-12-31       |
+------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)
2.)

Chuỗi và chữ số theo ngữ cảnh ngày và thời gian

MySQL nhận ra các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
1 trong các định dạng này:

  • Như một chuỗi ở định dạng

    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    4 'hoặc
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    5'. Một cú pháp thoải mái của người Viking được cho phép, nhưng không được chấp nhận: bất kỳ ký tự dấu câu nào cũng có thể được sử dụng làm dấu phân cách giữa các phần ngày. Ví dụ,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    6,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    7,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    8 và
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    9 là tương đương. Bắt đầu với MySQL 8.0,29, sử dụng bất kỳ ký tự nào ngoài dấu gạch ngang (
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    0) khi dấu phân cách đưa ra cảnh báo, như được hiển thị ở đây:relaxed syntax is permitted, but is deprecated: Any punctuation character may be used as the delimiter between date parts. For example,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    6,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    7,
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    8, and
    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    9 are equivalent. Beginning with MySQL 8.0.29, using any character other than the dash (
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    0) as the delimiter raises a warning, as shown here:

    mysql> SELECT DATE'2012@12@31';
    +------------------+
    | DATE'2012@12@31' |
    +------------------+
    | 2012-12-31       |
    +------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '@' in position 4 in datetime value '2012@12@31' at row 1 is
    deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
  • Là một chuỗi không có trình phân cách trong định dạng

    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    1 'hoặc
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    2', miễn là chuỗi có ý nghĩa như một ngày. Ví dụ,
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    3 và
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    4 được hiểu là
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    5, nhưng
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    6 là bất hợp pháp (nó có các phần tháng và ngày vô nghĩa) và trở thành
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    7.

  • Là một số ở định dạng

    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    8 hoặc
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    9, với điều kiện là số có ý nghĩa như một ngày. Ví dụ,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    0 và
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    1 được hiểu là
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    2.

MySQL nhận ra các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 và
{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 trong các định dạng này:

  • Như một chuỗi ở định dạng

    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    5 'hoặc
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    6'. MySQL cũng cho phép một cú pháp thoải mái của người Viking ở đây, mặc dù điều này không được dùng nữa: bất kỳ ký tự dấu câu nào cũng có thể được sử dụng làm dấu phân cách giữa các phần ngày hoặc phần thời gian. Ví dụ,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    7,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    8,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    9 và
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    0 là tương đương. Bắt đầu với MySQL 8.0,29, sử dụng bất kỳ ký tự nào làm trình phân cách trong các giá trị đó, ngoài dấu gạch ngang (
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    0) cho phần ngày và dấu hai chấm (
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    2) cho phần thời gian, đưa ra cảnh báo, như được hiển thị ở đây:relaxed syntax here, although this is deprecated: Any punctuation character may be used as the delimiter between date parts or time parts. For example,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    7,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    8,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    9, and
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    0 are equivalent. Beginning with MySQL 8.0.29, use of any characters as delimiters in such values, other than the dash (
    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    0) for the date part and the colon (
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    2) for the time part, raises a warning, as shown here:

    mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
    +--------------------------------+
    | TIMESTAMP'2012^12^31 11*30*45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
    row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)

    Phân định duy nhất được công nhận giữa phần ngày và phần thời gian và phần giây phân số là điểm thập phân.

    Các bộ phận ngày và thời gian có thể được phân tách bằng

    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    3 chứ không phải là một không gian. Ví dụ,
    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    7
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    5 tương đương.

    Trước đây, MYSQL đã hỗ trợ số lượng các ký tự khoảng trắng hàng đầu và theo dõi theo giá trị ngày và thời gian, cũng như giữa các phần ngày và thời gian của các giá trị

    { d 'str' }
    { t 'str' }
    { ts 'str' }
    3 và
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    4. Trong MySQL 8.0,29 trở lên, hành vi này không được chấp nhận và sự hiện diện của các ký tự khoảng trắng dư thừa kích hoạt cảnh báo, như được hiển thị ở đây:

    mysql> SELECT TIMESTAMP'2012-12-31   11-30-45';
    +----------------------------------+
    | TIMESTAMP'2012-12-31   11-30-45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31   11-30-45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)

    Cũng bắt đầu với MySQL 8.0,29, một cảnh báo được nêu ra khi các ký tự khoảng trắng khác với ký tự không gian được sử dụng, như thế này:

    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)

    Chỉ có một cảnh báo như vậy được nêu ra trên mỗi giá trị thời gian, mặc dù nhiều vấn đề có thể tồn tại với các dấu phân cách, khoảng trắng hoặc cả hai, như được hiển thị trong loạt các câu lệnh sau:

    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
  • Là một chuỗi không có trình phân cách trong định dạng

    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    8 'hoặc
    mysql> SELECT TIMESTAMP'2021-06-06
        '> 11:15:25';
    +--------------------------------+
    | TIMESTAMP'2021-06-06
     11:15:25'                       |
    +--------------------------------+
    | 2021-06-06 11:15:25            |
    +--------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '\n' in position 10 in datetime value '2021-06-06
    11:15:25' at row 1 is deprecated. Prefer the standard ' '.
    1 row in set (0.00 sec)
    9', miễn là chuỗi có ý nghĩa như một ngày. Ví dụ,
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    0 và
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    1 được hiểu là
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    2, nhưng
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    3 là bất hợp pháp (nó có phần phút vô nghĩa) và trở thành
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    4.

  • Là một số ở định dạng

    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    5 hoặc
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    6, với điều kiện là số có ý nghĩa như một ngày. Ví dụ,
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    7 và
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    8 được hiểu là
    mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
    +----------------------------------+
    | TIMESTAMP'2012!-12-31  11:30:45' |
    +----------------------------------+
    | 2012-12-31 11:30:45              |
    +----------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4095
    Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
    at row 1 is deprecated. Prefer the standard '-'. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
    +---------------------------------+
    | TIMESTAMP'2012-12-31  11:30:45' |
    +---------------------------------+
    | 2012-12-31 11:30:45             |
    +---------------------------------+
    1 row in set, 1 warning (0.00 sec)
    
    mysql> SHOW WARNINGS\G
    *************************** 1. row ***************************
      Level: Warning
       Code: 4096
    Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
    at row 1 is superfluous and is deprecated. Please remove. 
    1 row in set (0.00 sec)
    
    mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
    +--------------------------------+
    | TIMESTAMP'2012-12-31 11:30:45' |
    +--------------------------------+
    | 2012-12-31 11:30:45            |
    +--------------------------------+
    1 row in set (0.00 sec)
    9.

Giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 hoặc
{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 có thể bao gồm phần giây phân đoạn kéo dài lên đến độ chính xác của micro giây (6 chữ số). Phần phân số phải luôn luôn được tách ra khỏi thời gian còn lại bằng một điểm thập phân; Không có phân đoạn phân đoạn nào khác được công nhận. Để biết thông tin về hỗ trợ giây phân đoạn trong MySQL, xem Phần & NBSP; 11.2.6, Phần giây phân đoạn trong các giá trị thời gian.

Ngày chứa giá trị hai năm là mơ hồ vì thế kỷ chưa được biết. MySQL diễn giải các giá trị năm chữ số bằng cách sử dụng các quy tắc này:

  • Giá trị năm trong phạm vi

    mysql> CREATE TABLE ts (
        ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col TIMESTAMP NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> CREATE TABLE dt (
        ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col DATETIME NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> SELECT @@system_time_zone;
    +--------------------+
    | @@system_time_zone |
    +--------------------+
    | EST                |
    +--------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2020-01-01 04:40:10 |          1577871610 |
    | 2020-01-01 18:10:10 |          1577920210 |
    +---------------------+---------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 05:10:10 |          1577873410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    +---------------------+---------------------+
    2 trở thành
    mysql> CREATE TABLE ts (
        ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col TIMESTAMP NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> CREATE TABLE dt (
        ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col DATETIME NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> SELECT @@system_time_zone;
    +--------------------+
    | @@system_time_zone |
    +--------------------+
    | EST                |
    +--------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2020-01-01 04:40:10 |          1577871610 |
    | 2020-01-01 18:10:10 |          1577920210 |
    +---------------------+---------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 05:10:10 |          1577873410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    +---------------------+---------------------+
    3.

  • Giá trị năm trong phạm vi

    mysql> CREATE TABLE ts (
        ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col TIMESTAMP NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> CREATE TABLE dt (
        ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col DATETIME NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> SELECT @@system_time_zone;
    +--------------------+
    | @@system_time_zone |
    +--------------------+
    | EST                |
    +--------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2020-01-01 04:40:10 |          1577871610 |
    | 2020-01-01 18:10:10 |          1577920210 |
    +---------------------+---------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 05:10:10 |          1577873410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    +---------------------+---------------------+
    4 trở thành
    mysql> CREATE TABLE ts (
        ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col TIMESTAMP NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> CREATE TABLE dt (
        ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        ->     col DATETIME NOT NULL
        -> ) AUTO_INCREMENT = 1;
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = '+00:00';
    
    mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
        ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');
    
    mysql> SET @@time_zone = 'SYSTEM';
    
    mysql> SELECT @@system_time_zone;
    +--------------------+
    | @@system_time_zone |
    +--------------------+
    | EST                |
    +--------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2020-01-01 04:40:10 |          1577871610 |
    | 2020-01-01 18:10:10 |          1577920210 |
    +---------------------+---------------------+
    
    mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
    +---------------------+---------------------+
    | col                 | UNIX_TIMESTAMP(col) |
    +---------------------+---------------------+
    | 2020-01-01 10:10:10 |          1577891410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    | 2020-01-01 05:10:10 |          1577873410 |
    | 2019-12-31 23:40:10 |          1577853610 |
    | 2020-01-01 13:10:10 |          1577902210 |
    +---------------------+---------------------+
    5.

Xem thêm Phần & NBSP; 11.2.8, Năm 2 chữ số trong ngày.

Đối với các giá trị được chỉ định là các chuỗi bao gồm các phân định phần ngày, việc chỉ định hai chữ số cho các giá trị tháng hoặc ngày là không cần thiết.

mysql> CREATE TABLE ts (
    ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col TIMESTAMP NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> CREATE TABLE dt (
    ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col DATETIME NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> SELECT @@system_time_zone;
+--------------------+
| @@system_time_zone |
+--------------------+
| EST                |
+--------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 10:10:10 |          1577891410 |
| 2020-01-01 04:40:10 |          1577871610 |
| 2020-01-01 18:10:10 |          1577920210 |
+---------------------+---------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 05:10:10 |          1577873410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
+---------------------+---------------------+
7 giống như
mysql> CREATE TABLE ts (
    ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col TIMESTAMP NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> CREATE TABLE dt (
    ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col DATETIME NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> SELECT @@system_time_zone;
+--------------------+
| @@system_time_zone |
+--------------------+
| EST                |
+--------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 10:10:10 |          1577891410 |
| 2020-01-01 04:40:10 |          1577871610 |
| 2020-01-01 18:10:10 |          1577920210 |
+---------------------+---------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 05:10:10 |          1577873410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
+---------------------+---------------------+
8. Tương tự, đối với các giá trị được chỉ định là các chuỗi bao gồm các phân định phần thời gian, việc chỉ định hai chữ số trong giờ, phút hoặc giá trị thứ hai là không cần thiết nhỏ hơn
mysql> CREATE TABLE ts (
    ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col TIMESTAMP NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> CREATE TABLE dt (
    ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col DATETIME NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> SELECT @@system_time_zone;
+--------------------+
| @@system_time_zone |
+--------------------+
| EST                |
+--------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 10:10:10 |          1577891410 |
| 2020-01-01 04:40:10 |          1577871610 |
| 2020-01-01 18:10:10 |          1577920210 |
+---------------------+---------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 05:10:10 |          1577873410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
+---------------------+---------------------+
6. '2015-07-21'0 giống như '2015-07-21'1.

Các giá trị được chỉ định là số nên dài 6, 8, 12 hoặc 14 chữ số. Nếu một số dài 8 hoặc 14 chữ số, nó được cho là ở định dạng

mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
+--------------------------------+
| TIMESTAMP'2012^12^31 11*30*45' |
+--------------------------------+
| 2012-12-31 11:30:45            |
+--------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
row 1 is deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)
8 hoặc
mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
+----------------------------------+
| TIMESTAMP'2012!-12-31  11:30:45' |
+----------------------------------+
| 2012-12-31 11:30:45              |
+----------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
at row 1 is deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)

mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
+---------------------------------+
| TIMESTAMP'2012-12-31  11:30:45' |
+---------------------------------+
| 2012-12-31 11:30:45             |
+---------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4096
Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
at row 1 is superfluous and is deprecated. Please remove. 
1 row in set (0.00 sec)

mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
+--------------------------------+
| TIMESTAMP'2012-12-31 11:30:45' |
+--------------------------------+
| 2012-12-31 11:30:45            |
+--------------------------------+
1 row in set (0.00 sec)
5 và năm được đưa ra bởi 4 chữ số đầu tiên. Nếu số dài 6 hoặc 12 chữ số, nó được cho là ở định dạng
mysql> SELECT TIMESTAMP'2012^12^31 11*30*45';
+--------------------------------+
| TIMESTAMP'2012^12^31 11*30*45' |
+--------------------------------+
| 2012-12-31 11:30:45            |
+--------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '^' in position 4 in datetime value '2012^12^31 11*30*45' at
row 1 is deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)
9 hoặc
mysql> SELECT TIMESTAMP'2012!-12-31  11:30:45';
+----------------------------------+
| TIMESTAMP'2012!-12-31  11:30:45' |
+----------------------------------+
| 2012-12-31 11:30:45              |
+----------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4095
Message: Delimiter '!' in position 4 in datetime value '2012!-12-31  11:30:45'
at row 1 is deprecated. Prefer the standard '-'. 
1 row in set (0.00 sec)

mysql> SELECT TIMESTAMP'2012-12-31  11:30:45';
+---------------------------------+
| TIMESTAMP'2012-12-31  11:30:45' |
+---------------------------------+
| 2012-12-31 11:30:45             |
+---------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SHOW WARNINGS\G
*************************** 1. row ***************************
  Level: Warning
   Code: 4096
Message: Delimiter ' ' in position 11 in datetime value '2012-12-31  11:30:45'
at row 1 is superfluous and is deprecated. Please remove. 
1 row in set (0.00 sec)

mysql> SELECT TIMESTAMP'2012-12-31 11:30:45';
+--------------------------------+
| TIMESTAMP'2012-12-31 11:30:45' |
+--------------------------------+
| 2012-12-31 11:30:45            |
+--------------------------------+
1 row in set (0.00 sec)
6 và năm được đưa ra bởi 2 chữ số đầu tiên. Các số không phải là một trong những độ dài này được giải thích như thể được đệm với số không dẫn đến chiều dài gần nhất.

Các giá trị được chỉ định là chuỗi không giới hạn được giải thích theo độ dài của chúng. Đối với một chuỗi dài 8 hoặc 14 ký tự, năm được cho là được đưa ra bởi 4 ký tự đầu tiên. Mặt khác, năm được cho là được đưa ra bởi 2 ký tự đầu tiên. Chuỗi được giải thích từ trái sang phải để tìm năm, tháng, ngày, giờ, phút và giá trị thứ hai, cho nhiều phần như hiện diện trong chuỗi. Điều này có nghĩa là bạn không nên sử dụng các chuỗi có ít hơn 6 ký tự. Ví dụ: nếu bạn chỉ định '2015-07-21'6, nghĩ rằng đại diện cho tháng 3 năm 1999, MySQL đã chuyển đổi nó thành giá trị ngày của Zero Zero. Điều này xảy ra vì giá trị năm và tháng là '2015-07-21'7 và '2015-07-21'8, nhưng phần ngày hoàn toàn bị thiếu. Tuy nhiên, bạn có thể chỉ định rõ ràng giá trị bằng 0 để biểu thị các bộ phận tháng hoặc ngày bị thiếu. Ví dụ: để chèn giá trị '2015-07-21'9, sử dụng '20150721'0.zero date value. This occurs because the year and month values are '2015-07-21'7 and '2015-07-21'8, but the day part is completely missing. However, you can explicitly specify a value of zero to represent missing month or day parts. For example, to insert the value '2015-07-21'9, use '20150721'0.

MySQL nhận ra các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
2 trong các định dạng này:

  • Như một chuỗi ở định dạng '20150721'2. Bạn cũng có thể sử dụng một trong các cú pháp thư giãn sau đây của người Viking: '20150721'3, '20150721'4, '20150721'5, '20150721'6 hoặc '20150721'7. Ở đây '20150721'8 đại diện cho ngày và có thể có giá trị từ 0 đến 34.relaxed syntaxes: '20150721'3, '20150721'4, '20150721'5, '20150721'6, or '20150721'7. Here '20150721'8 represents days and can have a value from 0 to 34.

  • Là một chuỗi không có dấu phân cách ở định dạng '20150721'9, với điều kiện là nó có ý nghĩa như một thời gian. Ví dụ,

    { d 'str' }
    { t 'str' }
    { ts 'str' }
    00 được hiểu là
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    01, nhưng
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    02 là bất hợp pháp (nó có phần phút vô nghĩa) và trở thành
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    03.

  • Như một số ở định dạng

    { d 'str' }
    { t 'str' }
    { ts 'str' }
    04, với điều kiện là nó có ý nghĩa như một thời gian. Ví dụ,
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    05 được hiểu là
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    01. Các định dạng thay thế sau đây cũng được hiểu:
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    07,
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    08 hoặc
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    04.

Một phần giây phân đoạn được ghi nhận trong các định dạng thời gian

{ d 'str' }
{ t 'str' }
{ ts 'str' }
10,
{ d 'str' }
{ t 'str' }
{ ts 'str' }
11,
{ d 'str' }
{ t 'str' }
{ ts 'str' }
12 và
{ d 'str' }
{ t 'str' }
{ ts 'str' }
13, trong đó
{ d 'str' }
{ t 'str' }
{ ts 'str' }
14 là phần phân số trong độ chính xác của micro giây (6 chữ số). Phần phân số phải luôn luôn được tách ra khỏi thời gian còn lại bằng một điểm thập phân; Không có phân đoạn phân đoạn nào khác được công nhận. Để biết thông tin về hỗ trợ giây phân đoạn trong MySQL, xem Phần & NBSP; 11.2.6, Phần giây phân đoạn trong các giá trị thời gian.

Đối với các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
2 được chỉ định là các chuỗi bao gồm dấu phân cách phần thời gian, việc chỉ định hai chữ số trong giờ, phút hoặc giây là không cần thiết nhỏ hơn
mysql> CREATE TABLE ts (
    ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col TIMESTAMP NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> CREATE TABLE dt (
    ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col DATETIME NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> SELECT @@system_time_zone;
+--------------------+
| @@system_time_zone |
+--------------------+
| EST                |
+--------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 10:10:10 |          1577891410 |
| 2020-01-01 04:40:10 |          1577871610 |
| 2020-01-01 18:10:10 |          1577920210 |
+---------------------+---------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 05:10:10 |          1577873410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
+---------------------+---------------------+
6.
{ d 'str' }
{ t 'str' }
{ ts 'str' }
17 giống như
{ d 'str' }
{ t 'str' }
{ ts 'str' }
18.

Bắt đầu với MySQL 8.0.19, bạn có thể chỉ định phần bù múi giờ khi chèn các giá trị

{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 và
{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 vào bảng. Phần bù được nối vào phần thời gian của một bản theo nghĩa đen, không có không gian nội bào và sử dụng cùng một định dạng được sử dụng để đặt biến hệ thống
{ d 'str' }
{ t 'str' }
{ ts 'str' }
21, với các ngoại lệ sau:

  • Đối với các giá trị giờ dưới 10, cần có số 0 hàng đầu.

  • Giá trị

    { d 'str' }
    { t 'str' }
    { ts 'str' }
    22 bị từ chối.

  • Các tên múi giờ như

    { d 'str' }
    { t 'str' }
    { ts 'str' }
    23 và
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    24 không thể được sử dụng;
    { d 'str' }
    { t 'str' }
    { ts 'str' }
    25 cũng không thể được sử dụng trong bối cảnh này.

Giá trị được chèn không được có số 0 cho phần tháng, phần ngày hoặc cả hai phần. Điều này được thực thi bắt đầu với MySQL 8.0.22, bất kể cài đặt chế độ SQL máy chủ.

Ví dụ này minh họa việc chèn các giá trị DateTime với múi giờ bù vào các cột

{ d 'str' }
{ t 'str' }
{ ts 'str' }
4 và
{ d 'str' }
{ t 'str' }
{ ts 'str' }
3 bằng các cài đặt
{ d 'str' }
{ t 'str' }
{ ts 'str' }
21 khác nhau, sau đó truy xuất chúng:

mysql> CREATE TABLE ts (
    ->     id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col TIMESTAMP NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> CREATE TABLE dt (
    ->     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->     col DATETIME NOT NULL
    -> ) AUTO_INCREMENT = 1;

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO ts (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = '+00:00';

mysql> INSERT INTO dt (col) VALUES ('2020-01-01 10:10:10'),
    ->     ('2020-01-01 10:10:10+05:30'), ('2020-01-01 10:10:10-08:00');

mysql> SET @@time_zone = 'SYSTEM';

mysql> SELECT @@system_time_zone;
+--------------------+
| @@system_time_zone |
+--------------------+
| EST                |
+--------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM dt ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 10:10:10 |          1577891410 |
| 2020-01-01 04:40:10 |          1577871610 |
| 2020-01-01 18:10:10 |          1577920210 |
+---------------------+---------------------+

mysql> SELECT col, UNIX_TIMESTAMP(col) FROM ts ORDER BY id;
+---------------------+---------------------+
| col                 | UNIX_TIMESTAMP(col) |
+---------------------+---------------------+
| 2020-01-01 10:10:10 |          1577891410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
| 2020-01-01 05:10:10 |          1577873410 |
| 2019-12-31 23:40:10 |          1577853610 |
| 2020-01-01 13:10:10 |          1577902210 |
+---------------------+---------------------+

Phần bù không được hiển thị khi chọn giá trị DateTime, ngay cả khi một cái được sử dụng khi chèn nó.

Phạm vi của các giá trị bù được hỗ trợ là

{ d 'str' }
{ t 'str' }
{ ts 'str' }
29 đến
{ d 'str' }
{ t 'str' }
{ ts 'str' }
30, bao gồm.

Các văn bản DateTime bao gồm độ lệch múi giờ được chấp nhận làm giá trị tham số bằng các câu lệnh đã chuẩn bị.

Làm thế nào để bạn viết ngày trong mysql?

MySQL nhận ra các giá trị DateTime và Dấu thời gian trong các định dạng này:..
Là một chuỗi trong một trong hai 'yyyy-mm-dd hh: mm: ss' hoặc 'yy-mm-dd hh: mm: ss' định dạng.....
Là một chuỗi không có dấu phân cách trong định dạng 'yyyyMMDDHHMMSS' hoặc 'yyMMDDHMMSS', với điều kiện là chuỗi có ý nghĩa như một ngày ..

Làm thế nào để bạn tạo một ngày mới trong SQL?

Để cập nhật với ngày và giờ hiện tại: Cập nhật bảng_name đã đặt ngày_field = current_timestamp;Để cập nhật với một giá trị ngày cụ thể: Cập nhật bảng_name đã đặt ngày_field = 'yyyy-mm-dd hh: mm: ss.UPDATE table_name SET date_field = CURRENT_TIMESTAMP; To update with a specific date value: UPDATE table_name SET date_field = 'YYYY-MM-DD HH:MM:SS.

Làm thế nào để tôi chèn ngày trong yyyy

Bạn có thể sử dụng str_to_date để chuyển đổi chuỗi ngày sang định dạng ngày nội bộ của MySQL để chèn.use str_to_date to convert a date string to MySQL's internal date format for inserting.

Làm thế nào có thể tạo bảng ngày và thời gian trong MySQL?

Trước tiên, chức năng MySQL DATE_DIFF, tạo một bảng có tên datediff_test có một cột có kiểu dữ liệu là DateTime.Thứ hai, chèn một số hàng vào bảng Datediff_Test.Thứ ba, sử dụng hàm Datediff để so sánh ngày và thời gian hiện tại với giá trị trong mỗi hàng của bảng Datediff_Test.create a table named datediff_test that has one column whose data type is DATETIME . Second, insert some rows into the datediff_test table. Third, use the DATEDIFF function to compare the current date and time with the value in each row of the datediff_test table.