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

Jak NOW() działa w MariaDB

W MariaDB, NOW() to wbudowana funkcja daty i czasu, która zwraca bieżącą datę i godzinę.

Zwracana wartość jest zwracana w formacie 'YYYY-MM-DD HH:MM:SS' lub YYYYMMDDHHMMSS.uuuuuu format, w zależności od tego, czy funkcja jest używana w kontekście łańcuchowym czy liczbowym.

Zwracana wartość jest wyrażona w bieżącej strefie czasowej.

Masz również możliwość określenia precyzji w mikrosekundach.

Składnia

Składnia wygląda tak:

NOW([precision])

Gdzie precision jest opcjonalnym argumentem, który określa precyzję w mikrosekundach.

Ma również następujące synonimy:

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

Przykład

Oto przykład:

SELECT NOW();

Wynik:

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

Kontekst numeryczny

Kiedy NOW() jest używany w kontekście numerycznym, wynik jest następujący:YYYYMMDDHHMMSS.uuuuuu format.

Przykład:

SELECT
    NOW(),
    NOW() + 0;

Wynik:

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

Precyzja

Oto przykład określania dokładności w mikrosekundach:

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

Wynik:

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

Maksymalna wartość precyzji w mikrosekundach wynosi 6. Oto, co się dzieje, gdy dla precyzji zostanie przekazana wyższa liczba:

SELECT NOW(12);

Wynik:

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

Synonimy

Jak widać w powyższej składni, istnieje wiele synonimów dla NOW() .

Oto przykład wykorzystujący różne synonimy:

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

Wynik (przy użyciu wyjścia pionowego):

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

Dodawanie do aktualnego znacznika czasu

Istnieje wiele sposobów wykonywania arytmetyki na wartościach daty i godziny w MariaDB.

Oto przykład użycia operatora dodawania (+ ) aby dodać 2 dni do daty:

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

Wynik:

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

Zobacz także funkcje takie jak DATE_ADD() i ADDDATE() dla alternatywnego sposobu dodawania do bieżącej daty.

Odejmowanie od bieżącej daty

Oto przykład użycia operatora odejmowania (- ) aby odjąć 10 dni od bieżącej daty:

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

Wynik:

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

Zobacz funkcje takie jak DATE_SUB() i SUBDATE() dla alternatywnego sposobu odejmowania od bieżącej daty.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak NOT RLIKE działa w MariaDB

  2. Pełne szyfrowanie MariaDB w spoczynku i podczas przesyłania w celu maksymalnej ochrony danych — część druga

  3. 3 sposoby na uzyskanie sortowań dostępnych w MariaDB

  4. Równoważenie obciążenia bazy danych z ProxySQL i AWS Aurora

  5. Jak wykryć, czy wartość zawiera co najmniej jedną cyfrę w MariaDB?