
字符串类型
| 数据类型 | 别名 | 说明 |
|---|---|---|
| character(n) | char(n) | 定长字符串,不足补空格 |
| character varying(n) | varchar(n) | 变长字符串 |
| text | 变长字符串 |

相关函数
- 计算字符数的函数char_length(str)和字符串长度(length)的函数
# 使用CHAR_LENGTH函数计算字符串字符个数
SELECT CHAR_LENGTH('date'), CHAR_LENGTH('egg');
# 使用LENGTH函数计算字符串长度
SELECT LENGTH('date'), LENGTH('egg');
- 合并字符串CONCAT(s1,s2,…),CONCAT_WS(x,s1,s2,…)
# 使用CONCAT函数连接字符串
SELECT CONCAT('PostgreSQL', '15.5'),CONCAT('Postgre',NULL, 'SQL');
# 使用CONCAT_WS函数连接带分隔符的字符串
SELECT CONCAT_WS('-', '1st','2nd', '3rd'), CONCAT_WS('*', '1st', NULL, '3rd');
- 获取指定长度的字符串的函数LEFT(s,n)和RIGHT(s,n)
# 使用LEFT函数返回字符串中左边的字符
SELECT LEFT('football', 5);
# 使用RIGHT函数返回字符串中右边的字符
SELECT RIGHT('football', 4);
- 填充字符串LPAD(s1,len,s2)和RPAD(s1,len,s2)
# 使用LPAD函数对字符串进行填充操作
SELECT LPAD('hello',4,'??'), LPAD('hello',10,'??');
# 使用LPAD函数对字符串进行填充操作
SELECT RPAD('hello',4,'?'), RPAD('hello',10,'?');

- 删除空格的函数LTRIM(s)、RTRIM(s)和TRIM(s)
# 使用LTRIM函数删除字符串左边的空格
SELECT '( book )',CONCAT('(',LTRIM(' book '),')');
# 使用LTRIM函数删除字符串右边的空格
SELECT '( book )',CONCAT('(', RTRIM (' book '),')');
# 使用TRIM函数删除指定字符串两端的空格
SELECT '( book )',CONCAT('(', TRIM(' book '),')');
- 删除指定字符串的函数TRIM(s2 from s)
# 使用TRIM(s1 FROM s)函数删除字符串中两端指定的字符
SELECT TRIM('xy' FROM 'xyboxyokxyxy') ;
- 重复生成字符串的函数REPEAT(s,n)
# 使用REPEAT函数重复生成相同的字符串
SELECT REPEAT('PostgreSQL', 3);
- 替换函数REPLATE(s,s1,s2)
# 使用REPLACE函数进行字符串替代操作
SELECT REPLACE('xxx.PostgreSQL.com', 'x', 'w');
- 获取指定子串的函数SUBSTRING(s,n,len)
# 使用SUBSTRING函数获取指定位置处的子字符串
SELECT SUBSTRING('breakfast',5) AS col1, SUBSTRING('breakfast',5,3) AS col2, SUBSTRING('lunch', -3) AS col3;
- 匹配子串开始位置的函数POSITION(str1 in str)
# 使用POSITION函数查找字符串中指定子字符串的开始位置
SELECT POSITION('ball' IN 'football');
- 字符串逆序的函数REVERSE(s)
# 使用REVERSE函数反转字符串
SELECT REVERSE('abc');

最后修改时间:2023-12-07 09:15:58
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




