PostgreSQL TO_CHAR() pre dátum

Postgresql To Char Pre Datum



Keď máte v tabuľke PostgreSQL hodnotu dátumu, môžete zmeniť jej formát rôznymi spôsobmi pomocou TO_CHAR(). TO_CHAR() umožňuje používateľom konvertovať číselné hodnoty, časové značky, intervaly alebo celé čísla na reťazce. V tomto príspevku sa zameriame na to, ako použiť PostgreSQL na konverziu formátu dátumu pomocou TO_CHAR().

Práca s TO_CHAR()

Či už chcete získať aktuálny dátum v dopyte PostgreSQL alebo pracovať s dátumami v tabuľke, je nevyhnutné pochopiť, ako previesť dátum na reťazec. Možno budete chcieť krajší formát dátumu ako výstup alebo extrahovať časť dátumu po jeho konverzii na reťazec. V každom prípade je TO_CHAR() ideálnou funkciou.

Okrem toho TO_CHAR() ponúka množstvo možností formátovania, ktoré môžete použiť. Môžete kombinovať rôzne možnosti, aby ste získali požadovaný výstup.







TO_CHAR() má nasledujúcu syntax:



TO_CHAR(výraz, formát);

Výraz je časová pečiatka, ktorú chcete previesť pomocou určeného formátu.



Nasledujú bežne používané formáty TO_CHAR():





1 rok

YYYY – Zobrazuje rok 4 číslicami.

Y, YYY – Používa čiarku na vyjadrenie štyroch číslic v roku.



YYY – Zobrazuje iba posledné tri číslice v zadanom roku.

YY – Zobrazuje iba posledné dve číslice v zadanom roku.

A - Zobrazuje iba poslednú číslicu v zadanom roku.

2 mesiace

MESIAC – V názve mesiaca sa používajú veľké písmená.

mesiac - V názve mesiaca sa používajú malé písmená.

MOJE - Skratuje mesiac veľkými písmenami.

môj - Mesiac uvádza skratku a veľké písmená.

MM – Zobrazuje iba číslo mesiaca.

3. Deň

DEŇ – Názov dňa veľkými písmenami.

deň - Meno dňa s malými písmenami.

VY - Názov dňa skracuje a začína sa veľkým písmenom.

Tí – Názov dňa skracuje a veľkými písmenami.

ty- Meno dňa skrátené malými písmenami.

4.  Čas

HH – Hodina dňa

HH12 – 12-hodinový formát

HH24 – 24-hodinový formát

MOJE - Minúty

SS – sekúnd

Uvedené formáty nie sú jediné formáty TO_CHAR(), ktoré môžete použiť, ale sú to najčastejšie používané. V tomto príspevku uvedieme ich príklad použitia.

Príklad 1: Konverzia dátumu na reťazec

V tomto príklade zadáme cieľový dátum ako náš výraz a určíme, aký formát ho previesť. Nasledujúci výstup ukazuje, ako konvertujeme „2023-11-29“ na čitateľnejší a zrozumiteľnejší reťazec:

Príklad 2: Práca s aktuálnym dátumom

V PostgreSQL vám CURRENT_DATE poskytuje dátum pre daný deň.

Predpokladajme, že ho chceme previesť na reťazec. Ako výraz potrebujeme použiť iba CURRENT_DATE a potom určiť náš formát. Teraz získate aktuálny dátum ako reťazec.

Napriek tomu môžete zmeniť formát na iný, aby ste splnili svoj cieľ. Napríklad, ak chceme zobraziť iba dátum, mesiac a rok, vyladíme náš príkaz takto:

Krása TO_CHAR() spočíva v tom, že môžete kombinovať rôzne formáty, aby ste vytvorili konečný formát, ktorý chcete použiť na rande. Poďme ďalej a pracujme s časovými pečiatkami.

Príklad 3: Práca s časovou pečiatkou

Doteraz sme pracovali len s dátumami. Ak však dátum obsahuje čas, môžete čas extrahovať zadaním jeho ideálneho formátu.

Tu je príklad, kde určíme získať čas v 24-hodinovom formáte z poskytnutej časovej pečiatky, pričom dátum vynecháme:

Pre 12-hodinový formát času používame HH12 namiesto HH24. Pozrite si nasledujúci príklad:

Nakoniec, ak chceme extrahovať dátum a čas z poskytnutej časovej pečiatky, musíme pridať iba ideálny formát, ktorý chceme použiť. Tu špecifikujeme pomocou HH12:MI:SS pre čas a pridáme oddeľovač. Ďalej určíme, že ako dátum sa má použiť „dd, mesiac, yyyy“.

Náš konečný výstup je nasledovný:

Príklad 4: Práca s tabuľkou

Všetky formáty, o ktorých sme hovorili a spomínali, je možné použiť na tabuľku PostgreSQL. V tomto príklade máme tabuľku s názvom „objednávky“, ktorá obsahuje stĺpec „dátum“. Aby sme z neho vybrali prvky a použili TO_CHAR() pre stĺpec „dátum“, vykonáme náš príkaz, ako je znázornené na nasledujúcom obrázku:

Môžete použiť ľubovoľný formát. Tu je rovnaký príkaz, ale s iným formátom dátumu:

Ak chceme v stĺpci dátumu zobraziť iba deň v týždni a mesiac, príkaz vyladíme takto:

Neváhajte špecifikovať akýkoľvek ideálny formát, s ktorým chcete pre váš prípad pracovať.

Záver

TO_CHAR() je užitočná funkcia PostgreSQL, ktorá používateľom umožňuje konvertovať časové pečiatky a ďalšie literály na reťazce. Tento príspevok ukazuje rôzne spôsoby, ako môžete použiť TO_CHAR() pre dátumy. Poskytli sme rôzne príklady, aby sme zaistili rýchle pochopenie obsahu. Dúfajme, že TO_CHAR() vás už nebude trápiť.