sql >> Databáze >  >> RDS >> MariaDB

4 Funkce, které vracejí minuty z časové hodnoty v MariaDB

Níže jsou uvedeny 4 funkce, které vám umožňují vrátit část minut z časové hodnoty v MariaDB.

MINUTE() Funkce

MINUTE() funkce vrací minutovou část daného TIME nebo DATETIME výraz. Přijímá jeden argument, což je čas, ze kterého chcete extrahovat minuty.

Příklad:

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

Výsledek:

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

TIME hodnoty mohou být v rozsahu '-838:59:59.999999' na '838:59:59.999999' . Takže, ačkoli část hodin může být mnohem vyšší než 23 , část minut může být pouze v rozsahu 059 .

TIME hodnoty mohou být i záporné. V takových případech MINUTE() vrátí kladnou hodnotu.

Zde je záporná časová hodnota s větší hodinovou částí:

SELECT MINUTE('-838:59:59');

Výsledek:

+----------------------+
| MINUTE('-838:59:59') |
+----------------------+
|                   59 |
+----------------------+

Část minut je extrahována podle očekávání.

EXTRACT() Funkce

EXTRACT() Funkce umožňuje extrahovat zadanou jednotku z hodnoty data/času. Proto jej můžete použít k extrahování minut (stejně jako jiných jednotek) z časové hodnoty.

Příklad:

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

Výsledek:

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

TIME_FORMAT() Funkce

TIME_FORMAT() Funkce umožňuje formátovat časovou hodnotu na základě formátovacího řetězce. Formátovací řetězec určuje, jak má být formátován čas.

Tuto funkci tedy můžete použít k vrácení minut (a také hodin a sekund) od času.

Pomocí %i specifikátor formátu vrací minuty se dvěma číslicemi:

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

Výsledek:

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

TIME_FORMAT() funkce přijímá podmnožinu formátovacích řetězců, které lze použít s DATE_FORMAT() funkce. Úplný seznam formátovacích řetězců/specifikátorů, které lze použít s DATE_FORMAT(), najdete v části MariaDB Format Strings . TIME_FORMAT() funkce přijímá pouze specifikátory formátu pro hodiny, minuty a sekundy. Jakýkoli jiný specifikátor formátu má za následek null nebo 0 se vrací.

DATE_FORMAT() Funkce

DATE_FORMAT() Funkce umožňuje formátovat hodnotu data nebo data a času na základě formátovacího řetězce. Formátovací řetězec určuje, jak má být formátován datum/čas.

Můžeme tedy použít stejné specifikátory formátu, které jsme použili u TIME_FORMAT() funkce v předchozím příkladu. Nicméně DATE_FORMAT() nepřijímá TIME hodnotu, takže budeme muset předat DATETIME hodnotu.

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

Výsledek:

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

Předání jen TIME value s touto funkcí nefunguje:

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

Výsledek:

+------+
| %i   |
+------+
| 00   |
+------+

  1. Jak funguje SQLite Max()

  2. Získáváte umístění a název souboru externí tabulky?

  3. Oracle zkopíruje data do jiné tabulky

  4. Pivoting dat pomocí dvou sloupců