Строковые функции
rtrim()
Синтаксис:
rtrim(s) trim(s .f)
Функция rtrim() получает один или два аргумента типа text (аргумент f не обязателен). Если аргумент f не задан, функция возвращает строку s, из которой удалены все завершающие пробелы. В противном случае удаляется завершающая подстрока, состоящая только из символов, содержащихся в f. Если такая подстрока не найдена, s остается без изменений.
Примеры:
booktown=# SELECT rtrimC'whitespace example '); rtrim whitespace example (1 row) booktown=# SELECT title, rtrinKtitle, 'yes') booktown-# FROM books booktown-# LIMIT 4; title rtrim The Shining | The Shining Dune Dun 2001: A Space Odyssey 2001: A Space Od The Cat in the Hat j The Cat in the Hat (4 rows)
strpos()
Синтаксис:
strpos(s .b)
Функция strpos() эквивалентна функции SQL92 position(), но аргументы передаются ей в стиле С. Функция получает два аргумента, относящихся к типу text, и возвращает начальную позицию подстроки b в строке s (отсчет начинается с 1). Возвращаемое значение относится к типу integer. Если подстрока не найдена, функция возвращает 0.
Пример:
booktown=# SELECT title, strposdower(title), 'rabbit') booktown-l FROM books booktown-# WHERE strposdower(title), 'rabbit')!= 0; title | strpos The Velveteen Rabbit | 15 (1 row)
substr()
Синтаксис:
substr(s .n) substr(s .n .l)
Функция substr() эквивалентна функции SQL92 substring(), но аргументы передаются ей в стиле С. Функция вызывается с двумя или тремя аргументами s, n и 1 (необязательный аргумент), относящимися к типам text, mnteger и integer соответственно. Возвращаемое значение представляет собой подстроку s, начинающуюся с позиции n. Необязательный аргумент 1 определяет максимальную длину подстроки в символах.
Если заданная длина подстроки превышает количество оставшихся символов в строке s, возвращается только остаток строки. Иначе говоря, возвращаемое значение не дополняется до заданной длины.
Пример:
booktown=# SELECT title, substr(title, 15) .substr(title. 5. 9) booktown-# FROM books booktown-# ORDER BY title DESC booktown-# LIMIT 3; title | substr | substr The Velveteen Rabbit Rabbit | Velveteen The Tell-Tale Heart Heart Tell-Tale The Shining | | Shining (3 rows)