函数
返回类型
描述
例子
结果
string || string
text
字串连接
'Post' || 'greSQL'
PostgreSQL
bit_length(string)
integer
字串里二进制位的个数
bit_length('jose')
32
char_length(string) character_length(string)
integer
字串中的字符个数
char_length('jose')
4
convert(string using conversion_name)
text
使用指定的转换名字改变编码。转换可以通过 CREATE CONVERSION 定义。当然系统里有一些预定义的转换名字。参阅 Table 9-8 获取可用的转换名。
convert('PostgreSQL'
 using
iso_8859_1_to_utf_8)
Unicode (UTF-8) 编码的'PostgreSQL'
lower(string)
text
把字串转化为小写
lower('TOM')
tom
octet_length(string)
integer
字串中的字节数
octet_length('jose')
4
position(substring in string)
integer
声明的子字串的位置
position('om' in 'Thomas')
3
overlay(string placing string from integer [for integer])
text
替换子字串
overlay('Txxxxas' placing 'hom' from 2 for 4)
Thomas
position(substring in string)
integer
指定的子字串的位置
position('om' in 'Thomas')
3
substring(string [from integer] [for integer])
text
抽取子字串
substring('Thomas' from 2 for 3)
hom
substring(string from pattern)
text
抽取匹配 POSIX 正则表达式的子字串
substring('Thomas' from '...$')
mas
substring(string from pattern for escape)
text
抽取匹配SQL正则表达式的子字串
substring('Thomas' from '%#"o_a#"_' for '#')
oma
trim([leading | trailing | both] [characters] from string)
text
从字串 string 开头/结尾/两边/ 删除只包含 characters (缺省是一个空白)的最长的字串。
trim(both 'x' from 'xTomxx')
Tom
upper(string)
text
把字串转化为大写。
upper('tom')
TOM
ascii(text)
integer
参数第一
个字符的 ASCII
ascii('x')
120
btrim
(string text, characters text)
text
string
开头和结尾删除 只包含在 characters 里的字符的最长字串。
btrim
('xyxtrimyyx','xy')
trim
chr(integer)
text
给出 ASCII 码的字符
chr(65)
A
convert(string text, [src_encoding name,] dest_encoding name)
text
把字串转换为 dest_encoding . 原来的编码是用 src_encoding 声明的. 如果省略了 src_encoding, 则假设为数据库编码.
convert(
'text_in_unicode',
 'UNICODE',
'LATIN1')
ISO
8859-1
编码表示的text_in
_unicode
decode(string text, type text)
bytea
把早先用encode编码的,存放在 string 里面的二进制数据解码。 参数类型和encode一样。
decode('MTIzAAE=',
 'base64')
123\000\001
encode(data bytea, type text)
text
把二进制数据编码为只包含 ASCII 形式的数据。 支持的类型有base64hexescape
encode('123\\000
\\001', 'base64')
MTIzAAE=
initcap(text)
text
把每个单词(空白分隔)的第一个子母转为大写
initcap('hi
thomas')
Hi Thomas
length(string)
integer
字串中字符的数目
length('jose')
4
lpad(string text, length integer [, fill text])
text
通过填充字符 fill (缺省时为空白), string 填充为长度 length 如果 string 已经比 length 长则将其截断(在右边)。
lpad('hi', 5, 'xy')
xyxhi
ltrim(string text, characters text)
text
从字串 string 开头 删除只包含 characters 的最长的字串。 oracle切割字符串函数
ltrim
('zzzytrim','xyz')
trim
md5(string text)
text
计算给出字串的 MD5 散列,以十六进制返回结果。
md5('abc')
90015098
3cd24
fb0d69
63f7d2
8e17f72
pg_client_encoding()
name
当前客户端编码名称。
pg_client_
encoding()
SQL_ASCII
quote_ident(string text)
text
返回给出字串的一个适用于在SQL语句字串里当作标识符引起使用的形式。 只有在必要的时候才会添加引号(也就是说,如果字串包含非标识符字符或者会 转换大小写的字符)。 嵌入的引号被恰当地写了双份。
quote_ident('Foo')
"Foo"
quote_literal(string text)
text
返回给出字串的一个适用于在SQL语句字串里当作文本使用的形式。 嵌入的引号和反斜杠被恰当地写了双份。
quote_literal
('O\'Reilly')
'O''Reilly'
repeat(text, integer)
text
重复 text 一定次数。
repeat('Pg', 4)
PgPgPgPg
replace(string text, from text, to text)
text
把字串string里出现地所有子字串 from 替换成子字串 to
replace
('abcdefabcdef',
 'cd', 'XX')
abXXef
abXXef
rpad(string text, length integer [, fill text])
text
通过填充字符 fill (缺省时为空白), string 填充为长度 length 如果 string 已经比 length 长则将其截断。
rpad('hi', 5, 'xy')
hixyx
rtrim(string
text, character text)
text
从字串 string 结尾
删除只包含 character 的最长的字串。
rtrim
('trimxxxx','x')
trim
split_part
(string text, delimiter text, field integer)
text
根据 delimiter 分隔 string 返回生成的第 field 个子字串(一为基)。
split_part
('abc~@~def
~@~ghi','~@~',2)
def
strpos(string, substring)
text
声明的子字串的位置。(和 position(substring in string一样),不过要注意参数顺序 是相反的)
strpos
('high','ig')
2
substr(string, from [, count])
text
抽取子字串。(和 substring(string from from for count)一样)
substr('alphabet',
3, 2)
ph
to_ascii
(text [, encoding])
text
把文本从其它编码转换为 ASCII [a]
to_ascii('Karel')
Karel
to_hex(number integer 或者 bigint)
text
number 转换成其对应地十六进制表现形式。
to_hex(922337203
6854775807)
7fffffff
ffffffff
translate(string text, from text, to text)
text
把在 string 中包含的任何匹配 from 中的字符的字符转化为对应的 to 中的字符。
translate('12345',
 '14', 'ax')

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。