A TO_CHAR() használata
Akár az aktuális dátumot szeretné megkapni a PostgreSQL-lekérdezésben, akár a táblázatban lévő dátumokkal kíván dolgozni, elengedhetetlen annak megértése, hogyan lehet a dátumot karakterláncsá konvertálni. Lehet, hogy szebb formátumot szeretne a dátumhoz kimenetként, vagy ki szeretné bontani a dátum egy részét, miután karakterláncsá alakította. Bármi legyen is az eset, a TO_CHAR() az ideális függvény.
Emellett a TO_CHAR() rengeteg formázási lehetőséget kínál, amelyeket használhat. A kívánt kimenet eléréséhez kombinálhatja a különböző lehetőségeket.
A TO_CHAR() a következő szintaxist veszi fel:
TO_CHAR(kifejezés, formátum);
A kifejezés az az időbélyeg, amelyet a megadott formátum használatával konvertálni szeretne.
A következők a gyakran használt TO_CHAR() formátumok:
1 év
ÉÉÉÉ – 4 számjeggyel mutatja az évet.
Y,YYY – Vesszőt használ az év négy számjegyének jelölésére.
ÉÉÉ – Csak a megadott év utolsó három számjegyét mutatja.
YY – Csak a megadott év utolsó két számjegyét mutatja.
ÉS - Csak a megadott év utolsó számjegyét mutatja.
2 hónap
HÓNAP - A hónap nevéhez nagybetűt használ.
hónap - Kisbetűket használ a hónap nevéhez.
AZ ÉN - A hónapot nagybetűvel rövidíti.
Az én - A hónapot rövidíti és nagybetűvel írja.
MM – Csak a hónap számát mutatja.
3. Nap
NAP – A nap nagybetűs neve.
nap – A kisbetűs nap neve.
TE - A nap nevét lerövidíti és nagybetűvel írja.
Azok – A nap nevét rövidíti és nagybetűvel írja.
te- A kisbetűs rövidített napnév.
4. Idő
HH – A nap órája
HH12 – 12 órás formátum
HH24 – 24 órás formátum
AZ ÉN - Percek
SS – Másodpercek
A megadott formátumok nem az egyedüli TO_CHAR() formátumok, amelyeket használhat, de ezek a leggyakrabban használt formátumok. Ebben a bejegyzésben a használatukra mutatunk be példát.
1. példa: A dátum átalakítása karakterláncra
Ebben a példában a céldátumot írjuk be kifejezésünkként, és adjuk meg, hogy milyen formátumban konvertáljuk. A következő kimenet bemutatja, hogyan alakítjuk át a „2023-11-29” szöveget olvashatóbb és érthetőbb karakterláncokká:
2. példa: Munka az aktuális dátummal
A PostgreSQL-ben a CURRENT_DATE adja meg az adott nap dátumát.
Tegyük fel, hogy karakterláncsá akarjuk konvertálni. Csak a CURRENT_DATE kifejezést kell használnunk, majd megadnunk a formátumunkat. Most kapja meg az aktuális dátumot karakterláncként.
Ennek ellenére megváltoztathatja a formátumot egy másikra, hogy elérje célját. Például, ha csak a dátumot, a hónapot és az évet szeretnénk megjeleníteni, akkor a következőképpen hangoljuk a parancsot:
A TO_CHAR() szépsége abban rejlik, hogy a különböző formátumok kombinálásával létrehozhatja a végső formátumot, amelyet használni szeretne a dátumhoz. Lépjünk tovább, és dolgozzunk az időbélyegekkel.
3. példa: Munka az időbélyeggel
Eddig csak dátumokkal dolgoztunk. Ha azonban a dátum időt is tartalmaz, akkor az ideális formátum megadásával kivonhatja az időt.
Íme egy példa, ahol megadjuk, hogy az időt 24 órás formátumban kapjuk meg a megadott időbélyegből, a dátum elhagyásával:
A 12 órás időformátumhoz a HH24 helyett a HH12-t használjuk. Vessen egy pillantást a következő példára:
Végül, ha a dátumot és az időt ki akarjuk kinyerni a megadott időbélyegből, akkor csak az ideális formátumot kell hozzáadnunk, amelyet használni szeretnénk. Itt a HH12:MI:SS használatával adjuk meg az időt, és adjunk hozzá egy elválasztót. Ezután megadjuk, hogy a dátum „dd, hónap, éééé” legyen.
Végső kimenetünk a következő:
4. példa: Munka táblázattal
Minden általunk tárgyalt és említett formátum alkalmazható egy PostgreSQL táblára. Ebben a példában van egy „rendelések” nevű táblázatunk, amely tartalmazza a „dátum” oszlopot. Az elemek kiválasztásához és a TO_CHAR()-nak a „dátum” oszlophoz való használatához végrehajtjuk a parancsunkat az alábbiak szerint:
Bármilyen formátumot használhat. Itt ugyanaz a parancs, de más dátumformátummal:
Ha csak a hét napját és a hónapot szeretnénk megjeleníteni a dátum oszlopból, akkor a következőképpen hangoljuk a parancsot:
Nyugodtan határozzon meg bármilyen ideális formátumot, amellyel az Ön esetéhez szeretne dolgozni.
Következtetés
A TO_CHAR() egy praktikus PostgreSQL-függvény, amely lehetővé teszi a felhasználók számára, hogy az időbélyegeket és más literálokat karakterláncokká alakítsák. Ez a bejegyzés bemutatja a TO_CHAR() használatának különböző módjait a dátumokhoz. Különböző példákat mutattunk be a tartalom gyors megértése érdekében. Remélhetőleg a TO_CHAR() nem okoz többé gondot.