Съдържание
Когато в PostgreSQL Позоваваме се на временни типове данни, това не означава, че те са типове данни, които се съхраняват известно време и след това се променят, това, което имаме предвид, е типът данни, който обработва начина, по който съхраняваме времената и датите в записите на базата данни.Що се отнася до поддръжката на тези видове данни, тази, предлагана от PostgreSQL е на по -високо ниво, тъй като в допълнение към традиционните видове данни за времето, той предлага и поддръжка за часови зони и дори за различни DST.
Тип данни
- дата: Един от най -основните типове, заедно с времето, той съхранява само годината, месеца и деня без допълнителни допълнения или часови зони, толкова просто, колкото е описано по този начин.
- време: Той просто съхранява часове, минути и секунди, не взема предвид и часовите зони.
- времева марка: Този тип данни съхраняват календарната дата и час в едно и също поле, няма поддръжка и за часова зона.
- времеви отпечатък: На този етап виждаме колко интересно PostgreSQL, този тип данни съхранява същото като времева марка с добавянето на часовата зона, така че съхранените данни ще варират според часовата зона, посочена в сървъра.
- timetz: Съхранява времето без датата, като взема предвид и часовата зона, освен че е наясно с различните DST.
- интервал: Това е период от часове, минути, секунди, дни, месеци, години и т.н., който ни позволява да правим аритметика с датите, където например може да искаме да знаем каква е точната дата 50 дни от текущата дата, ние просто добавете интервал с желаните параметри.
В PostgreSQL Часовата зона не е отделна информация, която се съхранява в съответното поле, а преобразува това, което добавяме директно в UTC и я съхранява по този начин, но при показване на споменатата дата отчита часовата зона, в която сървърът и показва преобразуването .
Когато работим с тези видове елементи, трябва да предвидим тяхното поведение, за да избегнем по -големи злини поради това, че не знаем как би се държало преобразуването, което обработва този тип данни, което включва поддръжка за часовата зона.
Оператори и функции
Включването на интервали от време в PostgreSQL Те помагат много по отношение на работата по изчисляването на датите, без тази поддръжка би трябвало вътрешно да създаваме свои собствени функции, за да изчислим разликите, от които се нуждаем, като по този начин използваме време, което бихме могли да инвестираме в други фази на нашите проекти.
Нека да видим изображение с някои примери за използване на тези функции:
Както виждаме, имаме основни функции за събиране и изваждане, използвайки интервалите, с които можем да получим необходимите дати, включително поддръжка за часови зони, с които имаме нов хоризонт от възможности.
С това приключваме този урок, трябва да научим, че когато използваме часови зони, можем да имаме големи промени в това, което потребителят може да види, ако не вземем прогнозата за неговото поведение.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка