sql >> Database >  >> RDS >> Mysql

GET_FORMAT() Voorbeelden – MySQL

In MySQL kunt u de GET_FORMAT() functie om een ​​opmaakreeks voor de opgegeven argumenten te retourneren. Dit kan handig zijn wanneer u een opmaakreeks moet opgeven voor een andere functie, zoals DATE_FORMAT() of STR_TO_DATE() .

Syntaxis

De officiële syntaxis gaat als volgt:

GET_FORMAT({DATE|TIME|DATETIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'})

Voorbeeld 1 – Basisgebruik

Hier is een voorbeeld om te laten zien hoe het werkt.

SELECT GET_FORMAT(DATE,'USA');

Resultaat:

+------------------------+
| GET_FORMAT(DATE,'USA') |
+------------------------+
| %m.%d.%Y               |
+------------------------+

Dus dit voorbeeld retourneert de format string voor USA. We kunnen nu die opmaakreeks gebruiken en gebruiken in verschillende datumopmaakfuncties.

Zoals dit:

SELECT DATE_FORMAT('2020-03-07', '%m.%d.%Y') AS 'Formatted';

Resultaat:

+------------+
| Formatted  |
+------------+
| 03.07.2020 |
+------------+

We kunnen deze functie echter ook rechtstreeks doorgeven aan de DATE_FORMAT() functie. Zoals dit:

SELECT DATE_FORMAT('2020-03-07', GET_FORMAT(DATE,'USA')) AS 'Formatted';

Resultaat:

+------------+
| Formatted  |
+------------+
| 03.07.2020 |
+------------+

Dit bespaart ons dus dat we moeten onthouden welke tekenreeks we moeten gebruiken - GET_FORMAT() doet dat voor ons.

Voorbeeld 2 – Datumwaarden

Dit voorbeeld geeft een overzicht van alle varianten van het tweede argument wanneer het eerste argument DATE is .

SELECT 
    GET_FORMAT(DATE,'USA') AS 'USA',
    GET_FORMAT(DATE,'JIS') AS 'JIS',
    GET_FORMAT(DATE,'ISO') AS 'ISO',
    GET_FORMAT(DATE,'EUR') AS 'EUR',
    GET_FORMAT(DATE,'INTERNAL') AS 'INTERNAL';

Resultaat:

+----------+----------+----------+----------+----------+
| USA      | JIS      | ISO      | EUR      | INTERNAL |
+----------+----------+----------+----------+----------+
| %m.%d.%Y | %Y-%m-%d | %Y-%m-%d | %d.%m.%Y | %Y%m%d   |
+----------+----------+----------+----------+----------+

Voorbeeld 3 – Datum/tijd-waarden

Dit voorbeeld geeft een overzicht van alle varianten van het tweede argument wanneer het eerste argument DATETIME is .

SELECT 
    GET_FORMAT(DATETIME,'USA') AS 'USA',
    GET_FORMAT(DATETIME,'JIS') AS 'JIS',
    GET_FORMAT(DATETIME,'ISO') AS 'ISO',
    GET_FORMAT(DATETIME,'EUR') AS 'EUR',
    GET_FORMAT(DATETIME,'INTERNAL') AS 'INTERNAL';

Resultaat:

+-------------------+-------------------+-------------------+-------------------+--------------+
| USA               | JIS               | ISO               | EUR               | INTERNAL     |
+-------------------+-------------------+-------------------+-------------------+--------------+
| %Y-%m-%d %H.%i.%s | %Y-%m-%d %H:%i:%s | %Y-%m-%d %H:%i:%s | %Y-%m-%d %H.%i.%s | %Y%m%d%H%i%s |
+-------------------+-------------------+-------------------+-------------------+--------------+

Voorbeeld 4 – Tijdwaarden

Dit voorbeeld geeft een overzicht van alle varianten van het tweede argument wanneer het eerste argument TIME is .

SELECT 
    GET_FORMAT(TIME,'USA') AS 'USA',
    GET_FORMAT(TIME,'JIS') AS 'JIS',
    GET_FORMAT(TIME,'ISO') AS 'ISO',
    GET_FORMAT(TIME,'EUR') AS 'EUR',
    GET_FORMAT(TIME,'INTERNAL') AS 'INTERNAL';

Resultaat:

+-------------+----------+----------+----------+----------+
| USA         | JIS      | ISO      | EUR      | INTERNAL |
+-------------+----------+----------+----------+----------+
| %h:%i:%s %p | %H:%i:%s | %H:%i:%s | %H.%i.%s | %H%i%s   |
+-------------+----------+----------+----------+----------+

Eenheidspecificaties

De geretourneerde notatietekenreeks kan bestaan ​​uit elke combinatie van de volgende specificaties.

Beschrijving Beschrijving
%a Afgekorte naam van de weekdag (Sun ..Sat )
%b Afgekorte maandnaam (Jan ..Dec )
%c Maand, numeriek (0 ..12 )
%D Dag van de maand met Engels achtervoegsel (0th , 1st , 2nd , 3rd , …)
%d Dag van de maand, numeriek (00 ..31 )
%e Dag van de maand, numeriek (0 ..31 )
%f Microseconden (000000 ..999999 )
%H Uur (00 ..23 )
%h Uur (01 ..12 )
%I Uur (01 ..12 )
%i Minuten, numeriek (00 ..59 )
%j Dag van het jaar (001 ..366 )
%k Uur (0 ..23 )
%l Uur (1 ..12 )
%M Maandnaam (January ..December )
%m Maand, numeriek (00 ..12 )
%p AM of PM
%r Tijd, 12 uur (hh:mm:ss gevolgd door AM of PM )
%S Seconden (00 ..59 )
%s Seconden (00 ..59 )
%T Tijd, 24 uur (hh:mm:ss )
%U Week (00 ..53 ), waarbij zondag de eerste dag van de week is; WEEK() modus 0
%u Week (00 ..53 ), waarbij maandag de eerste dag van de week is; WEEK() modus 1
%V Week (01 ..53 ), waarbij zondag de eerste dag van de week is; WEEK() modus 2; gebruikt met %X
%v Week (01 ..53 ), waarbij maandag de eerste dag van de week is; WEEK() modus 3; gebruikt met %x
%W Naam weekdag (Sunday ..Saturday )
%w Dag van de week (0 =Zondag..6 =zaterdag)
%X Jaar voor de week waarin zondag de eerste dag van de week is, numeriek, vier cijfers; gebruikt met %V
%x Jaar voor de week, waarbij maandag de eerste dag van de week is, numeriek, vier cijfers; gebruikt met %v
%Y Jaar, numeriek, vier cijfers
%y Jaar, numeriek (twee cijfers)
%% Een letterlijke % karakter
%x x , voor elke “x ” niet hierboven vermeld


  1. Rails 3.1 - Pushen naar Heroku - Fouten bij het installeren van de postgres-adapter?

  2. Converteer SQL Server-query naar MySQL

  3. PostgreSQL, bestaande tabel opnieuw configureren, primaire sleutel wijzigen in type=serial

  4. Gebruik TYPE_NAME() om de naam van een gegevenstype in SQL Server op te halen