【PostgreSQL-9.6.3】函数(2)--字符型函数
在上一篇博文中我们交流了数值型函数,这篇我们将讨论PostgreSQL中的字符型函数。
1. reverse(string)
reverse函数可以将string字符串的字母显示顺序颠倒。
test=# select reverse ('world');
reverse
---------
dlrow
(1 row)
test=#
2. position(str1 in str)
position函数用来返回子字符串str1在str中的开始位置。
test=# select position ('ball' in 'basketball');
position
----------
7
(1 row)
test=#
3. replace (s,s1,s2)
replace函数返回字符串s2替代字符串s中所有的字符串s1后的结果。
test=# select replace ('aello','a','h');
replace
---------
hello
(1 row)
test=#
4. repeat(s,n)
repeat用来返回字符串s重复n次的值。当n<=0、s或n为null,都会返回空值。
test=# select repeat('world',2) as col1,repeat('world',-1) as col2,repeat(null,2) as col3,repeat('world',null);
col1 | col2 | col3 | repeat
------------+------+------+--------
worldworld | | |
(1 row)
test=#
5. ltrim(str)、rtrim(str)和trim(str)
ltrim返回删除左边空格后的字符串str;
rtrim返回删除右边空格后的字符串str;
trim返回删除左右两边空格后的字符串str。
test=# select '( world )',concat('(',ltrim(' world '),')') as col1,concat('(',rtrim(' world '),')') as col2,concat('(',trim(' world '),')') as col3;
?column? | col1 | col2 | col3
-----------+----------+----------+---------
( world ) | (world ) | ( world) | (world)
(1 row)
test=#
6. trim (s1 from s)
trim (s1 from s)删除字符串s中两端的s1,当s1缺省时,默认删除空格。在字符串内部出现的s1不会被删除。
test=# select trim ('abc' from 'abcpostabcgresqlabc');
btrim
---------------
postabcgresql
(1 row)
test=#
7. lpad(s1,len,s2)和rpad(s1,len,s2)
lpad和rpad函数,用字符串s2在s1的左/右填充,使s1到达len个字符长度,最终返回填充后的s1。假如s1大于len长度,则返回值被缩短至len长度。
test=# select 'world',lpad('world',10,'x') as col1,lpad('world',3,'x') as col2,rpad('world',10,'x') as col3,rpad('world',3,'x') as col4;
?column? | col1 | col2 | col3 | col4
----------+------------+------+------------+------
world | xxxxxworld | wor | worldxxxxx | wor
(1 row)
test=#
8. left(s,n)和right(s,n)
left(s,n)和right(s,n)返回字符串s最左/右边开始的n的字符。
test=# select left('postgresql',4) as col1,right('postgresql',3) as col2;
col1 | col2
------+------
post | sql
(1 row)
test=#
9. concat(s1,s2,s3...)和concat_ws(x,s1,s2,s3...)
concat(s1,s2,s3...)表示将括号内的字符串连接在一起,不能指定分隔符;
concat_ws(x,s1,s2,s3...)功能和concat一样,但可以指定x为分隔符;
括号内的字符串为null,则在连接时自动忽略;只要有一个参数是二进制字符串,那么结果将会是二进制字符串格式。
test=# select concat('I','Love','China') as col1,concat_ws('-','I','Love','China') as col2;
col1 | col2
------------+--------------
ILoveChina | I-Love-China
(1 row)
test=#
10. char_length(str)和length(str)
char_length返回str字符串的字符个数,length返回字符串str的字节个数。在我们经常使用的utf8字符集中,一个数字或者字符占一个字节,一个汉字占三个字节。
test=# select char_length('world') as col1,length('world') as col2;
col1 | col2
------+------
5 | 5
(1 row)
test=#
【PostgreSQL-9.6.3】函数(2)--字符型函数的更多相关文章
- oracle 10g函数大全--字符型函数
ASCII(x1) [功能]:返回字符表达式最左端字符的ASCII 码值. [参数]:x1,字符表达式 [返回]:数值型 [示例] SQL> select ascii('A') A,ascii( ...
- Oracle 函数-字符型函数
1.字符型函数 函数 说明 案例 结果 ASCII(X) 求字符X的ASCII码 select ASCII('A') FROM DUAL; 65 CHR(X) 求ASCII码对应的字符 select ...
- PostgreSQL学习手册(五) 函数和操作符
PostgreSQL学习手册(五) 函数和操作符 一.逻辑操作符: 常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符: 下面是Post ...
- Java语言程序设计(基础篇) 第四章 数学函数、字符和字符串
第四章 数学函数.字符和字符串 4.2 常用数学函数 方法分三类:三角函数方法(trigonometric method).指数函数方法(exponent method)和服务方法(service m ...
- PostgreSQL的时间/日期函数使用
PostgreSQL的常用时间函数使用整理如下: 一.获取系统时间函数 1.1 获取当前完整时间 select now(); david=# select now(); now ----------- ...
- PHP iconv()函数转字符编码的问题(转)
PHP iconv()函数转字符编码的问题(转) 载自:http://www.nowamagic.net/php/php_FunctionIconv.php 在php函数库有一个函数:iconv(), ...
- C++学习46 getline()函数读入一行字符 一些与输入有关的istream类成员函数
getline函数的作用是从输入流中读取一行字符,其用法与带3个参数的get函数类似.即 cin.getline(字符数组(或字符指针), 字符个数n, 终止标志字符) [例13.7] 用get ...
- [转] PostgreSQL的时间/日期函数使用
PS:http://blog.csdn.net/love_rongrong/article/details/6712883 字符串模糊比较 日期类型的模糊查询是不能直接进行的,要先转换成字符串然后再查 ...
- oracle函数大全-字符处理函
字符函数——返回字符值 这些函数全都接收的是字符族类型的参数(CHR 除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据库类 ...
随机推荐
- jquery源码分析(七)——事件模块 event(二)
上一章节探讨了事件的一些概念,接下来看下jQuery的事件模块. jQuery对事件的绑定分别有几个API:.bind()/.live()/.delegate()/.on()/click(), 不管是 ...
- lambda表达式与委托与线程初步谈论-基于刘铁锰视频观后操作
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 洛谷 P1972 BZOJ 1878 [SDOI2009]HH的项链
题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越来越长. ...
- [tsA1490][2013中国国家集训队第二次作业]osu![概率dp+线段树+矩阵乘法]
这样的题解只能舔题解了,,,qaq 清橙资料里有.. #include <iostream> #include <cstdio> #include <cstdlib> ...
- systemtap dtrace与 oracle
https://fritshoogland.wordpress.com/page/3/ http://externaltable.blogspot.com/2013/06/dtrace-explora ...
- portmap 和 rpc程序
Portmap 是为RPC 程序服务的. 每一个RPC server程序启动的时候要向portmap程序注册.这样portmap程序就知道这些RPC server监听在哪个端口. 而RPC clien ...
- zookeeper协调技术
本文转自http://www.cnblogs.com/wuxl360/p/5817471.html 感谢作者 一.分布式协调技术 在给大家介绍ZooKeeper之前先来给大家介绍一种技术——分布式协调 ...
- kendo AutoComplete实现多筛选条件
kendo autoComplete 原始情况下是不支持多筛选条件的 $("#autocomplete").kendoAutoComplete({ filter: "co ...
- VCenter中嵌套openstack VM不能ping通外部网络问题解决的方法
问题描写叙述: 近期搭建了vCenter环境,并使用vCenter创建的VM搭建了一套openstack环境.在验证openstack的外网功能时.发现报文死活ping不通外网,抓包发现报文在vcen ...
- Android实战简易教程-第十五枪(实现ListView中Button点击事件监听)
1.main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" x ...