MariaDB
 sql >> база данни >  >> RDS >> MariaDB

Извадете секунди от стойност за дата и час в MariaDB

Ето някои опции за изваждане на една или повече секунди от израз за дата и час в MariaDB.

SUBTIME() Функция

SUBTIME() изважда даден период от време от стойност за час или дата и час.

Пример:

SELECT SUBTIME('2021-05-01 10:00:00', '00:00:30');

Резултат:

+--------------------------------------------+
| SUBTIME('2021-05-01 10:00:00', '00:00:30') |
+--------------------------------------------+
| 2021-05-01 09:59:30                        |
+--------------------------------------------+

Можете също да промените другите единици за време, като часове, минути и т.н.

DATE_SUB() Функция

DATE_SUB() функцията ви позволява да извадите определен брой единици дата/час от израз за дата или час. Следователно можем да използваме тази функция, за да върнем стойността за дата и час, минус определен брой секунди.

Пример:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND);

Резултат:

+-----------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND) |
+-----------------------------------------------------+
| 2021-05-01 09:59:30                                 |
+-----------------------------------------------------+

Обърнете внимание, че SECOND ключовата дума остава не в множествено число, независимо дали изваждате една секунда или повече.

Можете също да използвате съставни единици за дата и час. Например, можете да правите минути и секунди наведнъж.

Пример:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND);

Резултат:

+-----------------------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) |
+-----------------------------------------------------------------+
| 2021-05-01 09:44:30                                             |
+-----------------------------------------------------------------+

Предаване само на датата

Ето какво се случва, ако предоставим само стойност за дата:

SELECT DATE_SUB('2021-05-01', INTERVAL 30 SECOND);

Резултат:

+--------------------------------------------+
| DATE_SUB('2021-05-01', INTERVAL 30 SECOND) |
+--------------------------------------------+
| 2021-04-30 23:59:30                        |
+--------------------------------------------+

Предполага се, че времето започва от 00:00:00 и така SECOND сумата се изважда от това.

Операторът за изваждане (- )

Друг начин да извадите една или повече секунди от стойност за дата и час е да използвате оператора за изваждане (- ), известен също като оператор минус.

Пример:

SELECT '2021-05-01 10:00:00' - INTERVAL 30 SECOND;

Резултат:

+--------------------------------------------+
| '2021-05-01 10:00:00' - INTERVAL 30 SECOND |
+--------------------------------------------+
| 2021-05-01 09:59:30                        |
+--------------------------------------------+

Операторът за събиране (+ )

Като алтернатива можете да използвате оператора за добавяне (+ ) заедно с отрицателна сума.

Пример:

SELECT '2021-05-01 10:00:00' + INTERVAL -30 SECOND;

Резултат:

+---------------------------------------------+
| '2021-05-01 10:00:00' + INTERVAL -30 SECOND |
+---------------------------------------------+
| 2021-05-01 09:59:30                         |
+---------------------------------------------+

Други начини за изваждане на секунди

Ето някои други подходи, които можете да използвате, за да извадите една или повече секунди от стойност за дата и час:

  • SUBTIME() функция.
  • ADDTIME() функция (предоставянето на отрицателна сума ще извади тази сума от стойността за дата и час).
  • SUBDATE() функция (това е синоним на DATE_SUB() когато се използва със същия синтаксис).
  • DATE_ADD() функция (предоставянето на отрицателна сума ще извади тази сума от стойността за дата и час).
  • ADDDATE() функция (предоставянето на отрицателна сума ще извади тази сума от стойността за дата и час).

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Автоматизация на базата данни зад новата електронна самоличност на Швеция Freja eID

  2. Как работи RPAD() в MariaDB

  3. Опростете управлението на потребителски акаунт с MariaDB MaxScale 2.2 и MariaDB Server 10.3

  4. Как NOT REGEXP работи в MariaDB

  5. Как да настроите наречени часови зони в MariaDB