sql >> Databasteknik >  >> RDS >> Mysql

FROM_UNIXTIME() Exempel – MySQL

MySQL FROM_UNIXTIME() funktionen gör att du kan returnera en datumrepresentation av en Unix-tidsstämpel.

Mer specifikt returnerar den Unix-tidsstämpeln som ett värde i 'ÅÅÅÅ-MM-DD HH:MM:SS' eller ÅÅÅÅMMDDHHMMSS format, beroende på om funktionen används i en sträng eller numerisk kontext.

Syntax

Du kan använda någon av följande två former:

FROM_UNIXTIME(unix_timestamp)
FROM_UNIXTIME(unix_timestamp,format)

unix_timestamp argument är ett internt tidsstämpelvärde (det kan till exempel produceras med UNIX_TIMESTAMP() funktion).

Det (valfria) format argument låter dig specificera hur resultatet ska formateras. Se tabellen längst ner i den här artikeln för giltiga format.

Exempel 1 – Grundläggande användning

Här är ett exempel för att demonstrera den första syntaxformen.

SELECT FROM_UNIXTIME(946562400) AS Result;

Resultat:

+---------------------+
| Result              |
+---------------------+
| 1999-12-31 00:00:00 |
+---------------------+

Exempel 2 – Bråkdelar av sekunder

I det här exemplet tillhandahåller jag ett argument som inkluderar bråkdelar av sekunder.

SELECT FROM_UNIXTIME(946609199.999999) AS Result;

Resultat:

+----------------------------+
| Result                     |
+----------------------------+
| 1999-12-31 12:59:59.999999 |
+----------------------------+

Exempel 3 – Formatera resultatet

I det här exemplet tillhandahåller jag ett andra argument, som anger hur resultatet ska formateras.

SELECT FROM_UNIXTIME(946562400, '%W, %D %M %Y') AS Result;

Resultat:

+----------------------------+
| Result                     |
+----------------------------+
| Friday, 31st December 1999 |
+----------------------------+

Och här är en som inkluderar tidsdelen i formateringen:

SELECT FROM_UNIXTIME(946609199, '%h:%i %p, %D %M %Y') AS Result;

Resultat:

+------------------------------+
| Result                       |
+------------------------------+
| 12:59 PM, 31st December 1999 |
+------------------------------+

Exempel 4 – Numerisk kontext

Om FROM_UNIXTIME() används i ett numeriskt sammanhang, tillhandahålls det resulterande datumet i numeriskt format.

Här är ett exempel som jämför resultat när de används i en strängkontext kontra numeriska.

SELECT 
    FROM_UNIXTIME(946562400) As 'String',
    FROM_UNIXTIME(946562400) + 0 As 'Numeric';

Resultat:

+---------------------+----------------+
| String              | Numeric        |
+---------------------+----------------+
| 1999-12-31 00:00:00 | 19991231000000 |
+---------------------+----------------+

Tillgängliga specifikationer

Följande specifikationer kan användas för att ange returformatet. Formatvärdet måste börja med ett procenttecken (% ).

Specifierare Beskrivning
%a Förkortat veckodagsnamn (Sun ..Sat )
%b Förkortat månadsnamn (Jan ..Dec )
%c Månad, numerisk (0 ..12 )
%D Dag i månaden med engelskt suffix (0th , 1st , 2nd , 3rd , …)
%d Dag i månaden, numerisk (00 ..31 )
%e Dag i månaden, numerisk (0 ..31 )
%f Mikrosekunder (000000 ..999999 )
%H Timme (00 ..23 )
%h Timme (01 ..12 )
%I Timme (01 ..12 )
%i Minuter, numeriska (00 ..59 )
%j Dag på året (001 ..366 )
%k Timme (0 ..23 )
%l Timme (1 ..12 )
%M Månadsnamn (January ..December )
%m Månad, numerisk (00 ..12 )
%p AM eller PM
%r Tid, 12 timmar (hh:mm:ss följt av AM eller PM )
%S Sekunder (00 ..59 )
%s Sekunder (00 ..59 )
%T Tid, 24 timmar (hh:mm:ss )
%U Vecka (00 ..53 ), där söndag är den första dagen i veckan; WEEK() läge 0
%u Vecka (00 ..53 ), där måndag är den första dagen i veckan; WEEK() läge 1
%V Vecka (01 ..53 ), där söndag är den första dagen i veckan; WEEK() läge 2; används med %X
%v Vecka (01 ..53 ), där måndag är den första dagen i veckan; WEEK() läge 3; används med %x
%W Veckodagens namn (Sunday ..Saturday )
%w Veckodag (0 =Söndag..6 =lördag)
%X År för veckan där söndag är den första dagen i veckan, numeriskt, fyra siffror; används med %V
%x Veckans år, där måndag är den första dagen i veckan, numeriskt, fyra siffror; används med %v
%Y Årtal, siffror, fyra siffror
%y Årtal, numeriskt (två siffror)
%% En bokstavlig % tecken
%x x , för någon "x ” inte listad ovan

  1. Exklusive tabeller som inte stöds som ska fångas av Oracle Streams

  2. Ta bort frågan fungerar inte i mysql

  3. Lär dig MySQL – New Technology Week

  4. T-SQL-buggar, fallgropar och bästa praxis – går med