PostgreSQL: функции форматирования данных
Функции форматирования типов данных
Существуют различные функции форматирования PostgreSQL, доступные для преобразования различных типов данных (дата / время, целые числа, числа с плавающей запятой, числовые) в форматированные строки и для преобразования форматированных строк в конкретные типы данных. Перед обсуждением функций форматирования мы обсудим различные шаблоны, доступные для форматирования значений даты и времени.
Шаблоны для форматирования даты / времени
Шаблон | Описание |
---|---|
HH | час дня (01-12) |
HH12 | час дня (01-12) |
HH24 | час дня (00-23) |
Мичиган | минута (00-59) |
SS | второй (00-59) |
МИЗ | миллисекунда (000-999) |
НАС | микросекунда (000000-999999) |
SSSS | секунд после полуночи (0-86399) |
AM, AM, PM или PM | индикатор меридием (без периодов) |
AM, AM, PM или PM | индикатор меридием (с периодами) |
Y, YYY | год (4 и более цифр) с запятой |
YYYY | год (4 и более цифр) |
YYY | последние 3 цифры года |
YY | последние 2 цифры года |
Y | последняя цифра года |
IYYY | ISO год (4 и более цифр) |
IYY | последние 3 цифры года ISO |
И.Я. | последние 2 цифры года ISO |
я | последняя цифра года ISO |
BC, BC, AD или реклама | индикатор эры (без периодов) |
BC, BC, AD или реклама | индикатор эры (с периодами) |
МЕСЯЦ | полное название месяца в верхнем регистре (с пробелами до 9 символов) |
Месяц | полное заглавное название месяца (с пробелами до 9 символов) |
месяц | полное название месяца в нижнем регистре (с пробелами до 9 символов) |
пН | сокращенное название месяца в верхнем регистре (3 буквы на английском языке, длина может отличаться) |
понедельник | сокращенное заглавное название месяца (3 буквы на английском языке, длина может отличаться) |
понедельник | сокращенное название месяца в нижнем регистре (3 буквы на английском языке, длина может быть разной) |
М.М. | номер месяца (01-12) |
ДЕНЬ | полное название дня в верхнем регистре (с пробелами до 9 символов) |
День | полное заглавное название дня (с пробелами до 9 символов) |
день | полное название дня в нижнем регистре (с пробелами до 9 символов) |
DY | сокращенное название дня в верхнем регистре (3 буквы на английском языке, длина может отличаться) |
Dy | сокращенное заглавное название дня (3 буквы на английском языке, длина может быть разной) |
ду | сокращенное название дня в нижнем регистре (3 буквы на английском языке, длина может отличаться) |
DDD | день года (001-366) |
IDDD | День ИСО года (001-371; 1-й день года - понедельник первой недели ИСО.) |
DD | день месяца (01-31) |
D | день недели, с воскресенья (1) по субботу (7) |
Я БЫ | ISO день недели с понедельника (1) по воскресенье (7) |
W | неделя месяца (1-5) (первая неделя начинается в первый день месяца.) |
WW | номер недели в году (1-53) (первая неделя начинается в первый день года.) |
IW | Номер недели в году по ISO (01 - 53; первый четверг нового года - на неделе 1.) |
CC | век (2 цифры) (XXI век начинается 2001-01-01 гг.) |
J | Юлианский день (целые дни с 24 ноября 4714 г. до н.э. в полночь UTC) |
Q | четверть (игнорируется to_date и to_timestamp) |
RM | месяц прописными буквами римскими цифрами (I-XII; I = январь) |
комната | месяц строчными буквами римскими цифрами (i-xii; i = январь) |
TZ | название часового пояса в верхнем регистре |
TZ | имя часового пояса в нижнем регистре |
Шаблоны для числового форматирования
Шаблон | Описание |
---|---|
9 | значение с указанным количеством цифр |
0 | значение с ведущими нулями |
, (Период) | десятичная точка |
, (запятая) | группа (тысяча) разделитель |
PR | отрицательное значение в угловых скобках |
S | знак привязан к номеру (использует язык) |
L | символ валюты (использует локаль) |
D | десятичная точка (использует локаль) |
г | разделитель группы (использует локаль) |
Мичиган | знак минус в указанной позиции (если число <0) |
PL | знак плюс в указанной позиции (если число> 0) |
SG | знак плюс / минус в указанной позиции |
Р.Н. | Римская цифра (ввод от 1 до 3999) |
TH или th | суффикс порядкового номера |
В | сдвинуть указанное количество цифр (см. примечания) |
ЕЕЕЕ | показатель для научной записи |
Функции форматирования
функция | Тип возврата | Описание | пример |
---|---|---|---|
to_char (метка времени, текст) | текст | конвертировать метку времени в строку | to_char (current_timestamp, 'HH12: MI: SS') |
to_char (интервал, текст) | текст | преобразовать интервал в строку | to_char (интервал «15 ч. 2 м. 12 с», «HH24: MI: SS») |
to_char (int, text) | текст | преобразовать целое число в строку | to_char (125, '999') |
to_char (двойная точность, текст) | текст | преобразовать реальную / двойную точность в строку | to_char (125.8 :: real, '999D9') |
to_char (числовой, текстовый) | текст | преобразовать число в строку | to_char (-125,8, '999D99S') |
to_date (текст, текст) | Дата | преобразовать строку в дату | to_date («05 декабря 2000», «ДД ПН ГГГГ») |
to_number (текст, текст) | числовой | преобразовать строку в числовой | to_number ('12, 454.8- ',' 99G999D9S ') |
to_timestamp (текст, текст) | отметка времени с часовым поясом | преобразовать строку в метку времени | to_timestamp («05 декабря 2000», «ДД Пн ГГГГ») |
to_timestamp (двойная точность) | отметка времени с часовым поясом | конвертировать эпоху Unix в метку времени | to_timestamp (1284352323) |
В строке выходного шаблона to_char есть определенные шаблоны, которые распознаются и заменяются соответствующим образом отформатированным.
Операторы битовых строк
оператор | Описание |
---|---|
|| | конкатенация |
& | побитовое И |
| | побитовое ИЛИ |
# | побитовый XOR |
~ | поразрядно НЕ |
<< | битовое смещение влево |
>> | битовое смещение вправо |
Пример: оператор конкатенации (||)
postgres = # ВЫБРАТЬ 'w3' || 'ресурс'; ? Колонок? ------------ w3resource (1 ряд)
Пример: побитовый оператор И (&)
postgres = # SELECT 2 & 15; ? Колонок? ---------- 2 (1 ряд)
Пример: побитовый оператор ИЛИ (|)
postgres = # ВЫБРАТЬ 2 | 5; ? Колонок? ---------- 7 (1 ряд)
Пример: побитовый оператор XOR (#)
postgres = # ВЫБРАТЬ 2 ^ 15; ? Колонок? ---------- 32768 (1 ряд)
Пример: побитовый оператор NOT (~)
postgres = # SELECT ~ 2; ? Колонок? ---------- -3 (1 ряд)
Пример: оператор побитового сдвига влево (<<)
postgres = # ВЫБРАТЬ 2 << 5; ? Колонок? ---------- 64 (1 ряд)
Пример: оператор побитового сдвига вправо (>>)
postgres = # ВЫБРАТЬ 8 >> 2; ? Колонок? ---------- 2 (1 ряд)
Предыдущая: Тригонометрические функции
Далее: Геометрические функции и операторы
Новый контент: Composer: менеджер зависимостей для PHP , R программирования