H-N
l instr(text,text,int,int)
描述:instr(string1,string2,int1,int2)返回在string1中从int1位置开始匹配到第int2次string2的位置,第一个int表示开始匹配起始位置,第二个int表示匹配的次数。
返回值类型:int 示例:
gbase=# SELECT instr( 'abcdabcdabcd', 'bcd', 2, 2 );
instr
-------
6
(1 row)
l instr(string,substring[,position,occurrence])
描述:从字符串string的position(缺省时为1)所指的位置开始查找并返回第occurrence(缺省时为1)次出现子串substring的位置的值。本函数以字符为计算单位,如一个汉字为一个字符。
n 当position为0时,返回0。
n 当position为负数时,从字符串倒数第n个字符往前逆向搜索。n为position的绝对值。
返回值类型:integer
示例:
gbase=# SELECT instr('corporate floor','or', 3);
instr
-------
5
(1 row)
gbase=# SELECT instr('corporate floor','or',-3,2);
instr
-------
2
(1 row)
l initcap(string)
描述:将字符串中的每个单词的首字母转化为大写,其他字母转化为小写。
返回值类型:text
示例:
gbase=# SELECT initcap('hi THOMAS');
initcap
-----------
Hi Thomas
(1 row)
l lengthb(text/bpchar)
描述:获取指定字符串的字节数。
返回值类型:int
示例:
gbase=# SELECT lengthb('hello');
lengthb
---------
5
(1 row)
l lengthb(string)
描述:获取参数string中字节的数目。与字符集有关,同样的中文字符,在GBK与UTF8中,返回的字节数不同。
返回值类型:integer
示例:
gbase=# SELECT lengthb('Chinese');
lengthb
---------
7
(1 row)
l left(str text, n int)
描述:返回字符串的前n个字符。当n是负数时,返回除最后|n|个字符以外的所有字符。
返回值类型:text
示例:
gbase=# SELECT left('abcde', 2);
left
------
ab
(1 row)
l length(string bytea, encoding name )
描述:指定encoding编码格式的string的字符数。在这个编码格式中,string必须是有效的。
返回值类型:int 示例:
gbase=# SELECT length('jose', 'UTF8');
length
--------
4
(1 row)
如果是查询bytea类型的长度,指定utf8编码时,最大长度只能为536870888。
l length(string)
描述:获取参数string中字符的数目。
返回值类型:integer
示例:
gbase=# SELECT length('abcd');
length
--------
4
(1 row)
l lower(string)
描述:把字符串转化为小写。
返回值类型:varchar
示例:
gbase=# SELECT lower('TOM');
lower
-------
tom
(1 row)
l lpad(string text, length int [, fill text])
描述:通过填充字符fill(缺省时为空白),把string填充为length长度。如果string已经比length长则将其尾部截断。
返回值类型:text
示例:
gbase=# SELECT lpad('hi', 5, 'xyza');
lpad
-------
xyzhi
(1 row)
l lpad(string varchar, length int[, repeat_string varchar])
描述:在string的左侧添上一系列的repeat_string(缺省为空白)来组成一个总长度为n的新字符串。
如果string本身的长度比指定的长度length长,则本函数将把string截断并把前面长度为length的字符串内容返回。
返回值类型:varchar
示例:
gbase=# SELECT lpad('PAGE 1',15,'*.');
lpad
-----------------
*.*.*.*.*PAGE 1
(1 row)
gbase=# SELECT lpad('hello world',5,'abcd');
lpad
-------
hello
(1 row)
l ltrim(string [, characters])
描述:从字符串string的开头删除只包含characters中字符(缺省是一个空白)的最长的字符串。
返回值类型:varchar
示例:
gbase=# SELECT ltrim('xxxxTRIM','x');
ltrim
-------
TRIM
(1 row)
l md5(string)
描述:将string使用MD5加密,并以16进制数作为返回值。
MD5加密算法安全性低,存在安全风险,不建议使用。
返回值类型:text
示例:
gbase=# SELECT md5('ABC');
md5
----------------------------------
902fbdd2b1df0c4f70b4a5d23525e932
(1 row)
l notlike(x bytea name text, y bytea text)
描述:比较x和y是否不一致。
返回值类型:bool
示例:
gbase=# SELECT notlike(1,2);
notlike
--------------
t
(1 row)
gbase=# SELECT notlike(1,1);
notlike
--------------
f
(1 row)
l nlssort(string text, sort_method text)
描述:以sort_method指定的排序方式返回字符串在该排序模式下的编码值,该编 码值可用于排序,其决定了string在这种排序模式下的先后位置。目前支持的sort_method为'nls_sort=schinese_pinyin_m'和'nls_sort=generic_m_ci'。其中, 'nls_sort=generic_m_ci'仅支持纯英文不区分大小写排序。
string类型 :text sort_method类型:
text 返回值类型:text
示例:
gbase=# SELECT nlssort('A', 'nls_sort=schinese_pinyin_m');
nlssort
----------------
01EA0000020006
(1 row)
gbase=# SELECT nlssort('A', 'nls_sort=generic_m_ci');
nlssort
------------
01EA000002
(1 row)