| 语法 | 相当于 | 描述 |
|---|---|---|
AT TIME ZONE |
timezone() |
时区 |
CURRENT_CATALOG |
current_catalog() |
现在使用的catalog |
COLLATION FOR |
pg_collation_for() |
排序 |
CURRENT_DATE |
current_date() |
现在的日期(年,月,日) |
CURRENT_ROLE |
current_user() |
现在的用户 |
CURRENT_SCHEMA |
current_schema() |
现在使用的schema |
CURRENT_TIMESTAMP |
current_timestamp() |
现在的时间戳 |
CURRENT_USER |
current_user() |
现在的用户 |
EXTRACT(<part> FROM <value>) |
extract("<part>", <value>) |
从…中抽取部分内容 |
OVERLAY(<text1> PLACING <text2> FROM <int1> FOR <int2>) |
overlay(<text1>, <text2>, <int1>, <int2>) |
替换 |
OVERLAY(<text1> PLACING <text2> FROM <int>) |
overlay(<text1>, <text2>, <int>) |
替换 |
SESSION_USER |
current_user() |
session用户 |
SUBSTRING(<text> FOR <int1> FROM <int2>)) |
substring(<text>, <int2>, <int1>) |
截取 |
SUBSTRING(<text> FOR <int>) |
substring(<text>, 1, <int>)) |
|
SUBSTRING(<text> FROM <int1> FOR <int2>) |
substring(<text>, <int1>, <int2>) |
|
SUBSTRING(<text> FROM <int>) |
substring(<text>, <int>) |
|
TRIM(<text1> FROM <text2>) |
btrim(<text2>, <text1>) |
祛除字符或字符串。 |
TRIM(<text2>, <text1>) |
btrim(<text2>, <text1>) |
|
TRIM(FROM <text>) |
btrim(<text>) |
|
TRIM(LEADING <text1> FROM <text2>) |
ltrim(<text2>, <text1>) |
|
TRIM(LEADING FROM <text> ) |
ltrim(<text>) |
|
TRIM(TRAILING <text1> FROM <text2>) |
rtrim(<text2>, <text1>) |
|
TRIM(TRAILING FROM<text> ) |
rtrim(<text>) |
|
USER |
current_user() |
查询使用用户 |
- 展示当前用户
select current_user();
current_user
+--------------+
hubble
- 根据时间获取当前的时间戳
select extract(epoch from cast('2022-11-13 11:22:10' as TIMESTAMP));
extract
+--------------+
1668338530
- 时间戳转化为日期
select 1668338530::TIMESTAMP;
timestamp
-----------------------
2022-11-13 11:22:10
SUBSTRING()用于字符串截取
从第1个位置开始截取,截取4个字符,返回结果:hubb
select SUBSTRING('hubble', 1, 4);
SUBSTRING
+--------------+
hubb
从8个位置开始截取,截取到最后一个字符
select SUBSTRING('information', 8);
SUBSTRING
+--------------+
tion
正则表达式截取
select SUBSTRING('PostgreSQL' from 'gre' );
SUBSTRING
+--------------+
gre
反向截取
select reverse(SUBSTRING(reverse('PostgreSQL'),1,2));
reverse
+--------------+
QL
position(),子串在一字符串中的位置
select position('om' in 'Thomas');
position
+--------------+
3
- 获得客户端编码
select pg_client_encoding();
pg_client_encoding
+--------------+
UTF8
- 利用正则表达式对字符串进行替换
select regexp_replace('Thomas', '.[mN]a.', 'M');
regexp_replace
+--------------+
ThM
- 重复字符串(指定次数)
select repeat('hb', 4);
repeat
+--------------+
hbhbhbhb
- 默认为去除空白字符,当然可以自己指定
select trim(both 'x' from 'xTomxx');
btrim
+--------------+
Tom
select trim(' xTomxxn ');
btrim
+--------------+
xTomxxn
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




