MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana TIMESTAMP() Bekerja di MariaDB

Di MariaDB, TIMESTAMP() adalah fungsi tanggal dan waktu bawaan yang mengembalikan nilai datetime, berdasarkan argumennya.

Ini dapat digunakan dengan satu atau dua argumen, sebagai berikut:

  • Bila digunakan dengan satu argumen, ia mengembalikan ekspresi tanggal atau datetime tersebut sebagai nilai datetime.
  • Bila digunakan dengan dua argumen, ia menambahkan argumen kedua (waktu) ke ekspresi pertama (tanggal atau waktu), lalu mengembalikan nilai waktu waktu yang dihasilkan.

Sintaks

Ini dapat digunakan dengan dua cara berikut:

TIMESTAMP(expr)
TIMESTAMP(expr1,expr2)

Dimana expr1 adalah ekspresi tanggal atau datetime, dan expr2 adalah ekspresi waktu untuk ditambahkan ke expr1 .

Contoh

Berikut ini contoh untuk didemonstrasikan:

SELECT TIMESTAMP('2030-02-01');

Hasil:

+-------------------------+
| TIMESTAMP('2030-02-01') |
+-------------------------+
| 2030-02-01 00:00:00     |
+-------------------------+

Nilai Tanggal-waktu

Berikut ini contoh melewatkan nilai datetime:

SELECT TIMESTAMP('2030-02-01 10:30:45');

Hasil:

+----------------------------------+
| TIMESTAMP('2030-02-01 10:30:45') |
+----------------------------------+
| 2030-02-01 10:30:45              |
+----------------------------------+

Argumen Kedua

Berikut ini contoh yang menambahkan argumen kedua ke argumen pertama:

SELECT TIMESTAMP('2030-02-01 10:30:45', '02:15:15');

Hasil:

+----------------------------------------------+
| TIMESTAMP('2030-02-01 10:30:45', '02:15:15') |
+----------------------------------------------+
| 2030-02-01 12:46:00                          |
+----------------------------------------------+

Mikrodetik

Berikut ini contoh yang menambahkan mikrodetik:

SELECT TIMESTAMP('2030-02-01 10:30:45', '00:00:00.123456');

Hasil:

+-----------------------------------------------------+
| TIMESTAMP('2030-02-01 10:30:45', '00:00:00.123456') |
+-----------------------------------------------------+
| 2030-02-01 10:30:45.123456                          |
+-----------------------------------------------------+

Waktu Negatif

Waktu negatif berlaku:

Contoh:

SELECT TIMESTAMP('2030-02-01 10:30:45', '-09:20:00');

Hasil:

+-----------------------------------------------+
| TIMESTAMP('2030-02-01 10:30:45', '-09:20:00') |
+-----------------------------------------------+
| 2030-02-01 01:10:45                           |
+-----------------------------------------------+

Tanggal Saat Ini

Kita dapat melewati NOW() sebagai argumen datetime untuk menggunakan tanggal dan waktu saat ini:

SELECT 
    NOW(),
    TIMESTAMP(NOW(), '10:30:45');

Hasil:

+---------------------+------------------------------+
| NOW()               | TIMESTAMP(NOW(), '10:30:45') |
+---------------------+------------------------------+
| 2021-05-28 09:25:09 | 2021-05-28 19:55:54          |
+---------------------+------------------------------+

Argumen Tidak Valid

Saat memberikan argumen yang tidak valid, TIMESTAMP() mengembalikan null dengan peringatan:

SELECT TIMESTAMP('Ten Thirty AM');

Hasil:

+----------------------------+
| TIMESTAMP('Ten Thirty AM') |
+----------------------------+
| NULL                       |
+----------------------------+
1 row in set, 1 warning (0.004 sec)

Periksa peringatannya:

SHOW WARNINGS;

Hasil:

+---------+------+---------------------------------------+
| Level   | Code | Message                               |
+---------+------+---------------------------------------+
| Warning | 1292 | Incorrect time value: 'Ten Thirty AM' |
+---------+------+---------------------------------------+

Argumen Tidak Ada

Memanggil TIMESTAMP() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun, menghasilkan kesalahan:

SELECT TIMESTAMP();

Hasil:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

Dan contoh lain:

SELECT TIMESTAMP('2020-12-09', '06:30:45', '06:30:45');

Hasil:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' '06:30:45')' at line 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana ORD() Bekerja di MariaDB

  2. Pengguna Baru dan Manajemen LDAP di ClusterControl 1.8.2

  3. Sepuluh Tips Cara Mencapai Keamanan MySQL dan MariaDB

  4. 4 Cara Menemukan Baris yang Mengandung Huruf Kecil di MariaDB

  5. Bagaimana TO_SECONDS() Bekerja di MariaDB