sql >> Database teknologi >  >> RDS >> Mysql

SEC_TO_TIME() Eksempler – MySQL

Når du bruger MySQL, kan du bruge SEC_TO_TIME() funktion til at bygge en tid værdi baseret på et givet antal sekunder. Grundlæggende angiver du antallet af sekunder som et argument, og det vil konvertere det til en tid værdi.

Sådan fungerer det.

Syntaks

Syntaksen ser sådan ud:

SEC_TO_TIME(seconds)

Hvor seconds er det antal sekunder, du ønsker konverteret til en tid værdi.

Eksempel 1 – Grundlæggende brug

Her er et eksempel til at demonstrere.

SELECT SEC_TO_TIME(65);

Resultat:

+-----------------+
| SEC_TO_TIME(65) |
+-----------------+
| 00:01:05        |
+-----------------+

Eksempel 2 – En større værdi

Her er et eksempel med en lidt større værdi.

SELECT SEC_TO_TIME(6555);

Resultat:

+-------------------+
| SEC_TO_TIME(6555) |
+-------------------+
| 01:49:15          |
+-------------------+

Her er en med en endnu større værdi igen.

SELECT SEC_TO_TIME(655555);

Resultat:

+---------------------+
| SEC_TO_TIME(655555) |
+---------------------+
| 182:05:55           |
+---------------------+

Så tidsværdien er ikke begrænset til 24 timer. Dette skyldes, at det ikke er begrænset til kun at repræsentere tidspunktet på dagen. Det kan også repræsentere forløbet tid eller et tidsinterval mellem to begivenheder.

Eksempel 3 – Begrænsninger på tidsdatatypen

time datatypen er begrænset til et område fra -838:59:59 til 838:59:59 . Hvis resultatet falder uden for dette område, får du en advarsel.

SELECT SEC_TO_TIME(6555555);

Resultat:

+----------------------+
| SEC_TO_TIME(6555555) |
+----------------------+
| 838:59:59            |
+----------------------+
1 row in set, 1 warning (0.00 sec)

Vær dog forsigtig. Den viste tidsværdi kan være vildledende, da den stopper ved 838:59:59 selvom resultatet ville have været større end det.

Her er endnu et eksempel med endnu en større værdi.

SELECT SEC_TO_TIME(65555550000);

Resultat:

+--------------------------+
| SEC_TO_TIME(65555550000) |
+--------------------------+
| 838:59:59                |
+--------------------------+
1 row in set, 1 warning (0.00 sec)

Bemærk, at vi får det samme resultat som i det foregående eksempel, selvom argumentet sekunder er meget større i dette.

Eksempel 4 – Numerisk kontekst

Her er et eksempel på brug af SEC_TO_TIME() i en numerisk sammenhæng. Det gør vi ved at tilføje en værdi (i dette tilfælde 0 ) til erklæringen.

SELECT 
    SEC_TO_TIME(6555),
    SEC_TO_TIME(6555) + 0;

Resultat:

+-------------------+-----------------------+
| SEC_TO_TIME(6555) | SEC_TO_TIME(6555) + 0 |
+-------------------+-----------------------+
| 01:49:15          |                 14915 |
+-------------------+-----------------------+


  1. JSON_LENGTH() – Returner længden af ​​et JSON-dokument i MySQL

  2. Administrer MySQL med phpMyAdmin på Ubuntu 10.10 (Maverick)

  3. #1273 - Ukendt sortering:'utf8mb4_unicode_ci' cPanel

  4. hvordan du gør dine data vandrette