Строковые функции
lpad()
Синтаксис:
lpad(s .n) lpacl(s .n .c)
Функция lpad() вызывается с двумя или тремя аргументами s, n и с (необязательный аргумент), относящимися к типам text, Integer и text соответственно. Строка s дополняется слева до длины n символов пробелами или содержимым необязательного аргумента с.
Если начальная длина строки s больше n, строка усекается справа до длины n.
Пример:
booktown=# SELECT title. IpadCtitle, 12, AS dashed, booktown-# IpadCtitle. 12. '-+-') AS pius_dashed booktown-# FROM books LIMIT 4; title | dashed | plus_dashed _ The Shining | – The Shining | – The Shining Dune |Dune Dune 2001: A Space Odyssey | 2001: A Spac | 2001: A Spac The Cat in the Hat | The Cat in t | The Cat in t (4 rows)
Itrim()
Синтаксис:
Itrim(s) Itrim(s .f)
Функция itrim() получает один или два аргумента типа text (аргумент f не обязателен). Если аргумент f не задан, функция возвращает строку s, из которой удалены все начальные пробелы. В противном случае удаляется начальная подстрока, состоящая только из символов, содержащихся в f. Если такая подстрока не найдена, s остается без изменений.
Примеры:
booktown=# SELECT ItrimC whitespace example'): Itrim whitespace example (1 row) booktown=# SELECT title. ItrimCtitle, 'TD2he ') booktown-# FROM books booktown-# LIMIT 4: title | Itritn The Shining | Shining Dune I une 2001: A Space Odyssey | 001: A Space Odyssey The Cat in the Hat j Cat In the Hat (4 rows)
octet_length()
Синтаксис:
octet_length(s)
Функция SQL92 octet_length() получает один аргумент s типа text, varchar или character и возвращает длину полученной строки в байтах. Возвращаемое значение относится к типу integer.
В большинстве случаев длина строки в байтах совпадает с количеством символов, хотя в расширенных кодировках не всегда, поскольку в них символ по определению может состоять из нескольких байтов.
Пример:
booktown=# SELECT title, octetjength(title) booktown-# FROM books booktown-# ORDER BY title ASC booktown-# LIMIT 3: title octet Jength 2001: A Space Odyssey | 21 Bartholomew and the Oobleck | 27 Dune | 4 (3 rows)