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

4 funkcje, które zwracają część sekundową z wartości czasu w MariaDB

Poniżej znajdują się 4 funkcje, które umożliwiają zwrócenie części sekundowej z wartości czasu w MariaDB.

SECOND() Funkcja

SECOND() funkcja zwraca część sekundową podanego TIME lub DATETIME wyrażenie. Przyjmuje jeden argument, czyli czas, z którego chcesz wydobyć sekundy.

Przykład:

SELECT SECOND('03:45:30');

Wynik:

+--------------------+
| SECOND('03:45:30') |
+--------------------+
|                 30 |
+--------------------+

TIME wartości mogą należeć do zakresu '-838:59:59.999999' do '838:59:59.999999' . Obejmuje to mikrosekundy, ale SECOND() zwraca tylko drugą część (jest MICROSECOND() funkcja zwracania mikrosekund).

TIME wartości mogą być również ujemne. W takich przypadkach SECOND() zwraca wartość dodatnią.

Oto ujemna wartość czasu z częścią w mikrosekundach:

SELECT SECOND('-838:59:59.999999');

Wynik:

+-----------------------------+
| SECOND('-838:59:59.999999') |
+-----------------------------+
|                          59 |
+-----------------------------+

Druga część jest wyodrębniana zgodnie z oczekiwaniami.

EXTRACT() Funkcja

EXTRACT() funkcja pozwala na wyodrębnienie określonej jednostki z wartości daty/czasu. Dlatego możesz go użyć do wyodrębnienia sekund (jak również innych jednostek) z wartości czasu.

Przykład:

SELECT EXTRACT(SECOND FROM '10:47:01');

Wynik:

+---------------------------------+
| EXTRACT(SECOND FROM '10:47:01') |
+---------------------------------+
|                               1 |
+---------------------------------+

TIME_FORMAT() Funkcja

TIME_FORMAT() funkcja pozwala sformatować wartość czasu na podstawie ciągu formatującego. Ciąg formatu określa sposób formatowania czasu.

Możesz zatem użyć tej funkcji do zwrócenia sekund (a także minut i godzin) z czasu.

%s i %S specyfikatory formatu zwracają sekundy z dwiema cyframi:

SELECT 
    TIME_FORMAT('10:07:30', '%s'),
    TIME_FORMAT('10:07:30', '%S');

Wynik:

+-------------------------------+-------------------------------+
| TIME_FORMAT('10:07:30', '%s') | TIME_FORMAT('10:07:30', '%S') |
+-------------------------------+-------------------------------+
| 30                            | 30                            |
+-------------------------------+-------------------------------+

Możesz także użyć $f specyfikator formatu do zwrócenia sześciu cyfr subsekund:

SELECT 
    TIME_FORMAT('10:07:30.123456', '%f') AS "Microseconds",
    TIME_FORMAT('10:07:30.123456', '%s.%f') AS "Both";

Wynik:

+--------------+-----------+
| Microseconds | Both      |
+--------------+-----------+
| 123456       | 30.123456 |
+--------------+-----------+

TIME_FORMAT() funkcja akceptuje podzbiór ciągów formatujących, które mogą być używane z DATE_FORMAT() funkcjonować. Zobacz ciągi formatujące MariaDB, aby uzyskać pełną listę ciągów formatujących/specyfikatorów, których można używać z DATE_FORMAT() . TIME_FORMAT() funkcja akceptuje tylko specyfikatory formatu dla godzin, minut i sekund/subsekund. Każdy inny specyfikator formatu daje wynik null lub 0 zostanie zwrócony.

DATE_FORMAT() Funkcja

DATE_FORMAT() Funkcja umożliwia sformatowanie wartości daty lub daty i godziny na podstawie ciągu formatującego. Ciąg formatu określa sposób formatowania daty/godziny.

Dlatego możemy użyć tych samych specyfikatorów formatu, których użyliśmy w funkcji TIME_FORMAT() funkcji w poprzednim przykładzie. Jednak DATE_FORMAT() nie akceptuje TIME wartość, więc będziemy musieli przekazać DATETIME wartość.

SELECT DATE_FORMAT('2023-01-01 10:07:30', '%s');

Wynik:

+------------------------------------------+
| DATE_FORMAT('2023-01-01 10:07:30', '%s') |
+------------------------------------------+
| 30                                       |
+------------------------------------------+

Mija tylko TIME wartość nie działa z tą funkcją:

SELECT DATE_FORMAT('10:07:30', '%s') AS '%s';

Wynik:

+------+
| %s   |
+------+
| 00   |
+------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 6 sposobów na sprawdzenie wersji MariaDB

  2. Wiesz, że chcesz:Migracja z Oracle do MariaDB

  3. Jak działa WEIGHT_STRING() w MariaDB

  4. 6 typowych scenariuszy awarii dla MySQL i MariaDB oraz jak je naprawić

  5. 5 prostych kroków do rozpoczęcia pracy z MariaDB i Tableau