MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

Jak TIMESTAMP() działa w MariaDB

W MariaDB, TIMESTAMP() jest wbudowaną funkcją daty i czasu, która zwraca wartość daty i czasu na podstawie jej argumentów.

Może być używany z jednym lub dwoma argumentami, w następujący sposób:

  • Kiedy jest używany z jednym argumentem, zwraca to wyrażenie daty lub daty i godziny jako wartość daty i godziny.
  • Kiedy jest używany z dwoma argumentami, dodaje drugi argument (czas) do pierwszego wyrażenia (data lub data/godzina), a następnie zwraca wynikową wartość daty i godziny.

Składnia

Można go używać na dwa sposoby:

TIMESTAMP(expr)
TIMESTAMP(expr1,expr2)

Gdzie expr1 jest wyrażeniem daty lub daty i godziny, a expr2 jest wyrażeniem czasowym do dodania do expr1 .

Przykład

Oto przykład do zademonstrowania:

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

Wynik:

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

Wartości daty i godziny

Oto przykład przekazywania wartości daty i godziny:

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

Wynik:

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

Drugi argument

Oto przykład, który dodaje drugi argument do pierwszego:

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

Wynik:

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

Mikrosekundy

Oto przykład, który dodaje mikrosekundy:

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

Wynik:

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

Czasy negatywne

Czasy ujemne są ważne:

Przykład:

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

Wynik:

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

Aktualna data

Możemy przekazać NOW() jako argument datetime, aby użyć bieżącej daty i czasu:

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

Wynik:

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

Nieprawidłowe argumenty

Po przekazaniu nieprawidłowego argumentu TIMESTAMP() zwraca null z ostrzeżeniem:

SELECT TIMESTAMP('Ten Thirty AM');

Wynik:

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

Sprawdź ostrzeżenie:

SHOW WARNINGS;

Wynik:

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

Brakujący argument

Wywołanie TIMESTAMP() z niewłaściwą liczbą argumentów lub bez przekazywania jakichkolwiek argumentów powoduje błąd:

SELECT TIMESTAMP();

Wynik:

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

I kolejny przykład:

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

Wynik:

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. Równoważenie obciążenia bazy danych:konfiguracje rozproszone a scentralizowane

  2. Jak ELT() działa w MariaDB

  3. ClusterControl CMON HA dla wysokiej dostępności rozproszonej bazy danych — część druga (konfiguracja dostępu GUI)

  4. 4 sposoby na wyświetlenie listy wszystkich widoków w bazie danych MariaDB

  5. Jak zainstalować MariaDB na CentOS 8?