postgre数据库字符串函数和日期函数操作小记

目录

前言

字符串操作

1、字符串连接符

2、定位(查找字符串位置)

2.1、定位字符串位置

3、截取字符串

3.1、截取字符串

3.2、正则匹配截取字符串

4、计算字符串md5散列

5、计算字符串中字符数量

5.1 计算字符串中的字符数量

6、把字符串全部转换为小写字符

7、把字符串全部转换为大写字符

8、根据分隔符分割获取字符串

9、重复字符串

10、覆盖替换单个字符串

11、替换全部字符串

12、根据字符顺序逐个匹配替换字符串

13、长度

日期时间转日期字符串

参考

日期格式化转换匹配字符


前言

postgre数据库字符串和日期转换操作常用函数手册

字符串操作

1、字符串连接符

||

使用示例:select 'id'||'name'

运行结果: idname

2、定位(查找字符串位置)

postion(substring in string)

使用示例:select postion('a' in 'name')

运行结果: 2

2.1、定位字符串位置

strpos(string,substring)

使用示例:select strpos('test','s')

运行结果: 3

3、截取字符串

substr(string, start, size)

使用示例1:select substr('test',2,2)

运行结果1: es

使用示例2:select substr('test',2)

运行结果2: est

3.1、截取字符串

substring(string from int for int)

使用示例:substring('hello word' from 2 for 3)

运行结果: ell

3.2、正则匹配截取字符串

substring(string from pattern)

使用示例:substring('hello word' from '…$')

运行结果: lo word

4、计算字符串md5散列

md5(string text)

使用示例:select md5('12345')

运行结果: 827ccb0eea8a706c4c34a16891f84e7b

5、计算字符串中字符数量

char_length(string)

使用示例:select char_length('12345')

运行结果: 5

5.1 计算字符串中的字符数量

octet_length(string)

select octet_length('测试')

使用示例1:select char_length('测试')

运行结果1: 6

使用示例2:select char_length('Test123')

运行结果2: 7

6、把字符串全部转换为小写字符

lower(string)

使用示例:select lower('TEST')

运行结果: test

7、把字符串全部转换为大写字符

upper

使用示例:select upper('test')

运行结果: TEST

8、根据分隔符分割获取字符串

split_part(string, delimiter, int)

使用示例:select split_part('id1,id2,id3,id4', ',',2)

运行结果: id2

9、重复字符串

repeat(string,int)

使用示例:select repeat('id',4)

运行结果:idididid

10、覆盖替换单个字符串

overlay(string placing substring from int for int)

使用示例:select overlay('id1,id2' placing ';' from 4 for 1)

运行结果: id1;id2

11、替换全部字符串

replace(string,string, replacestring)

说明:可以用来替换特殊字符

使用示例:select replace('id,id,id,id', ',', '-')

运行结果: id-id-id-id

12、根据字符顺序逐个匹配替换字符串

translate(string, from, to)

使用示例:select translate('123,213,321', '31','13')

说明:将字符串中1和3互换

运行结果: 321,231,123

13、长度

length(string) 说明:计算字符串长度

使用示例:select length("name")

运行结果:4

日期时间转日期字符串

to_char(now(),'YYYY/MM/DD HH:MI:SS:MS')

参考

| 函数| 返回类型| 描述 | 例子| |- |- | -|-| |tochar(timestamp, text) |text |把时间戳转换成字串 |tochar(currenttimestamp, 'HH12:MI:SS') |tochar(interval, text) |text |把时间间隔转为字串 |tochar(interval '15h 2m 12s', 'HH24:MI:SS') |tochar(int, text) |text |把整数转换成字串 |tochar(125, '999') |tochar(double precision, text) |text |把实数/双精度数转换成字串 |tochar(125.8::real, '999D9') | tochar(numeric, text) |text |把numeric转换成字串 |tochar(-125.8, '999D99S') |todate(text, text) |date |把字串转换成日期 |todate('05 Dec 2000', 'DD Mon YYYY') |totimestamp(text, text) |timestamp |把字串转换成时间戳 |totimestamp('05 Dec 2000', 'DD Mon YYYY') |totimestamp(double) |timestamp |把UNIX纪元转换成时间戳 |totimestamp(200120400) |tonumber(text, text) |numeric |把字串转换成numeric |to_number('12,454.8-', '99G999D9S')

日期格式化转换匹配字符

|模式 |描述| |- |- | |HH |一天的小时数(01-12) |HH12 |一天的小时数(01-12) |HH24 |一天的小时数(00-23) |MI |分钟(00-59) |SS |秒(00-59) |MS |毫秒(000-999) |US |微秒(000000-999999) |AM |正午标识(大写) |Y,YYY |带逗号的年(4和更多位) |YYYY |年(4和更多位) |YYY |年的后三位 |YY |年的后两位 |Y |年的最后一位 |MONTH |全长大写月份名(空白填充为9字符) |Month |全长混合大小写月份名(空白填充为9字符) |month |全长小写月份名(空白填充为9字符) |MON |大写缩写月份名(3字符) |Mon |缩写混合大小写月份名(3字符) |mon |小写缩写月份名(3字符) |MM |月份号(01-12) |DAY |全长大写日期名(空白填充为9字符) |Day |全长混合大小写日期名(空白填充为9字符) |day |全长小写日期名(空白填充为9字符) ||DY |缩写大写日期名(3字符) |Dy |缩写混合大小写日期名(3字符) |dy |缩写小写日期名(3字符) |DDD |一年里的日子(001-366) |DD |一个月里的日子(01-31) |D |一周里的日子(1-7;周日是1) |W |一个月里的周数(1-5)(第一周从该月第一天开始) |WW |一年里的周数(1-53)(第一周从该年的第一天开始)

你可能感兴趣的:(数据库,java,servlet,postgre)