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

Jak działa MICROSECOND() w MariaDB

W MariaDB, MICROSECOND() to wbudowana funkcja daty i czasu, która zwraca mikrosekundową część danego wyrażenia czasu.

Przyjmuje jeden argument, czyli czas, z którego chcesz wyodrębnić mikrosekundy.

Sekundy są zwracane jako liczba z zakresu 0 do 999999 .

Składnia

Składnia wygląda tak:

MICROSECOND(time)

Gdzie time to wyrażenie czasowe, z którego należy pobrać mikrosekundy.

Przykład

Oto przykład:

SELECT MICROSECOND('10:30:45.123456');

Wynik:

+--------------------------------+
| MICROSECOND('10:30:45.123456') |
+--------------------------------+
|                         123456 |
+--------------------------------+

Poniższe wyrażenie czasowe nie zawiera jawnie mikrosekund:

SELECT MICROSECOND('10:30:45');

Wynik:

+-------------------------+
| MICROSECOND('10:30:45') |
+-------------------------+
|                       0 |
+-------------------------+

Wynik to 0 .

Wartości daty i godziny

Działa również z wartościami daty i godziny:

SELECT MICROSECOND('2030-02-01 10:30:45.123456');

Wynik:

+-------------------------------------------+
| MICROSECOND('2030-02-01 10:30:45.123456') |
+-------------------------------------------+
|                                    123456 |
+-------------------------------------------+

Wartości dat

Podanie daty bez godziny zwraca 0 , wraz z ostrzeżeniem.

Przykład:

SELECT MICROSECOND('2025-10-31');

Wynik:

+---------------------------+
| MICROSECOND('2025-10-31') |
+---------------------------+
|                         0 |
+---------------------------+
1 row in set, 1 warning (0.001 sec)

Ostrzeżenie możemy zobaczyć, uruchamiając następujący kod:

SHOW WARNINGS;

Wynik:

+---------+------+----------------------------------------------+
| Level   | Code | Message                                      |
+---------+------+----------------------------------------------+
| Warning | 1292 | Truncated incorrect time value: '2025-10-31' |
+---------+------+----------------------------------------------+

Aktualna data

Możemy przekazać NOW() jako argument datetime, aby użyć aktualnego czasu:

SELECT 
    NOW(6),
    MICROSECOND(NOW(6));

Wynik:

+----------------------------+---------------------+
| NOW(6)                     | MICROSECOND(NOW(6)) |
+----------------------------+---------------------+
| 2021-05-16 14:41:09.098168 |               98168 |
+----------------------------+---------------------+

W tym przypadku określiłem, że NOW() powinien zwrócić ułamkową precyzję 6 (co powoduje, że zwraca mikrosekundy).

Tutaj znowu z mniejszą precyzją:

SELECT 
    NOW(3),
    MICROSECOND(NOW(3));

Wynik:

+-------------------------+---------------------+
| NOW(3)                  | MICROSECOND(NOW(3)) |
+-------------------------+---------------------+
| 2021-05-16 14:42:35.831 |              831000 |
+-------------------------+---------------------+

Nieprawidłowe argumenty

Po przekazaniu nieprawidłowego argumentu czasu, MICROSECOND() zwraca null :

SELECT MICROSECOND('10:75:00.123456');

Wynik:

+--------------------------------+
| MICROSECOND('10:75:00.123456') |
+--------------------------------+
|                           NULL |
+--------------------------------+

Brakujący argument

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

SELECT MICROSECOND();

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 MICROSECOND('10:30:45.123', '06:30:45.123');

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.123')' 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. MariaDB CURRENT_TIME () Wyjaśnione

  2. Zwróć język używany dla funkcji daty i godziny w MariaDB

  3. Operatory zbiorów SQL MariaDB

  4. POKAŻ TABELE w MariaDB

  5. 2 sposoby na uzyskanie zestawów znaków dostępnych w MariaDB