Her er nogle muligheder for at trække et eller flere sekunder fra et datetime-udtryk i MariaDB.
SUBTIME()
Funktion
SUBTIME()
trækker en given mængde tid fra en værdi for tid eller dato.
Eksempel:
SELECT SUBTIME('2021-05-01 10:00:00', '00:00:30');
Resultat:
+--------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '00:00:30') | +--------------------------------------------+ | 2021-05-01 09:59:30 | +--------------------------------------------+
Du kan også ændre de andre tidsenheder, såsom timer, minutter osv.
DATE_SUB()
Funktion
DATE_SUB()
funktionen giver dig mulighed for at trække et bestemt antal dato/tidsenheder fra et dato- eller datotidsudtryk. Derfor kan vi bruge denne funktion til at returnere datetime-værdien minus et vist antal sekunder.
Eksempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND);
Resultat:
+-----------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND) | +-----------------------------------------------------+ | 2021-05-01 09:59:30 | +-----------------------------------------------------+
Bemærk, at SECOND
søgeord forbliver ikke-flertal, uanset om du trækker et sekund eller mere.
Du kan også bruge sammensatte dato- og tidsenheder. For eksempel kan du lave minutter og sekunder på én gang.
Eksempel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND);
Resultat:
+-----------------------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND) | +-----------------------------------------------------------------+ | 2021-05-01 09:44:30 | +-----------------------------------------------------------------+
Passer Just the Date
Her er, hvad der sker, hvis vi kun angiver en datoværdi:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 SECOND);
Resultat:
+--------------------------------------------+ | DATE_SUB('2021-05-01', INTERVAL 30 SECOND) | +--------------------------------------------+ | 2021-04-30 23:59:30 | +--------------------------------------------+
Det antager, at tiden starter kl. 00:00:00, og så SECOND
beløb trækkes fra det.
Subtraktionsoperatøren (-
)
En anden måde at trække et eller flere sekunder fra en datetime-værdi på er at bruge subtraktionsoperatoren (-
), også kendt som minusoperatoren.
Eksempel:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 SECOND;
Resultat:
+--------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL 30 SECOND | +--------------------------------------------+ | 2021-05-01 09:59:30 | +--------------------------------------------+
Additionsoperatøren (+
)
Du kan alternativt bruge additionsoperatoren (+
) sammen med et negativt beløb.
Eksempel:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 SECOND;
Resultat:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL -30 SECOND | +---------------------------------------------+ | 2021-05-01 09:59:30 | +---------------------------------------------+
Andre måder at trække sekunder på
Her er nogle andre metoder, du kan bruge til at trække et eller flere sekunder fra en datetime-værdi:
SUBTIME()
funktion.ADDTIME()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).SUBDATE()
funktion (dette er et synonym forDATE_SUB()
når det bruges med samme syntaks).DATE_ADD()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).ADDDATE()
funktion (hvis du angiver et negativt beløb, trækkes dette beløb fra dato-tidsværdien).