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

Jak TIME() działa w MariaDB

W MariaDB, TIME() to wbudowana funkcja daty i czasu, która wyodrębnia część czasu z podanego wyrażenia czasu lub daty i godziny i zwraca ją jako ciąg.

Przyjmuje jeden argument, którym jest czas lub data-godzina, dla której chcesz wyodrębnić czas.

Składnia

Składnia wygląda tak:

TIME(expr)

Gdzie expr to wyrażenie czasu lub daty i godziny, dla którego należy wyodrębnić czas.

Przykład

Oto przykład do zademonstrowania:

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

Wynik:

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

Wartości czasu

Oto przykład, który wyodrębnia czas z wartości czasu:

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

Wynik:

+------------------+
| TIME('10:30:45') |
+------------------+
| 10:30:45         |
+------------------+

Mikrosekundy

Oto przykład obejmujący mikrosekundy:

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

Wynik:

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

Większe godziny

TIME wartości mogą należeć do zakresu '-838:59:59.999999' do '838:59:59.999999' .

Dlatego część godzinowa może być znacznie wyższa niż 23 :

SELECT TIME('578:30:45');

Wynik:

+-------------------+
| TIME('578:30:45') |
+-------------------+
| 578:30:45         |
+-------------------+

Czasy negatywne

Czasy ujemne są ważne:

Przykład

SELECT TIME('-578:30:45');

Wynik:

+--------------------+
| TIME('-578:30:45') |
+--------------------+
| -578:30:45         |
+--------------------+

Godziny poza zakresem

Wartości czasu poza zakresem '-838:59:59.999999' do '838:59:59.999999' są ograniczone do odpowiedniej granicy i zawierają ostrzeżenie.

Przykład:

SELECT TIME('978:30:45');

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

+-------------------+
| TIME('978:30:45') |
+-------------------+
| 838:59:59         |
+-------------------+
1 row in set, 1 warning (0.003 sec)

Sprawdźmy ostrzeżenie:

SHOW WARNINGS;

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

+---------+------+---------------------------------------------+
| Level   | Code | Message                                     |
+---------+------+---------------------------------------------+
| Warning | 1292 | Truncated incorrect time value: '978:30:45' |
+---------+------+---------------------------------------------+

Aktualna data

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

SELECT 
    NOW(),
    TIME(NOW());

Wynik:

+---------------------+-------------+
| NOW()               | TIME(NOW()) |
+---------------------+-------------+
| 2021-05-27 10:24:23 | 10:24:23    |
+---------------------+-------------+

Nieprawidłowe argumenty

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

SELECT TIME('Ten Thirty AM');

Wynik:

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

Sprawdź ostrzeżenie:

SHOW WARNINGS;

Wynik:

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

Brakujący argument

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

SELECT TIME();

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 TIME('10: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. MariaDB WERSJA() Objaśnienie

  2. Uruchamianie zapytań analizy Big Data przy użyciu SQL i Presto

  3. Jak działa funkcja LOCATE() w MariaDB

  4. Jak PERIOD_DIFF() działa w MariaDB

  5. Kontrolowanie przełączania awaryjnego replikacji dla MySQL i MariaDB za pomocą skryptów przed lub po awarii