PostgreSQL中字符串相关问题

PostgreSQL的字符串类型有character、character varying和text的值。在使用character类型的时候, 它有自动填充空白的潜在影响,特别是在其它数据库(MySQL,Oracle)向PostgreSQL数据库迁移的过程中数据类型的处理。

集合返回函数

函数

参数类型

返回类型

描述

generate_series(start,stop)

 

int 或bigint

setof int 或setof bigint(与参数类型相同)

产生一系列值,从start到stop,步长为1

generate_series(start,stop, step)

int 或bigint

setof int 或setof bigint(与参数类型相同)

产生一系列值,从start到stop,步长为step

generate_series(start,stop, step interval)

timestamp或timestamp with time zone

set of timestamp或set oftimestamp with time zone(和参数类型相同)

产生一系列值,从start到stop,步长为step

当step为正时,如果start大于stop则返回零行。相反,当step为负时,如果start小于stop则返回零行。对于NULL输入也会返回零行。step为零是一个错误。下面是一些例子:

SELECT * FROM generate_series(2,4);
generate_series
-----------------
2
3
4
(3 rows)

SELECT * FROM generate_series(5,1,-2);
generate_series
-----------------
5
3
1
(3 rows)

SELECT * FROM generate_series(4,3);
generate_series
-----------------
(0 rows)

SELECT current_date + s.a AS dates FROM generate_series(0,14,7) AS s(a);
dates
------------
2004-02-05
2004-02-12
2004-02-19
(3 rows)

SELECT * FROM generate_series(’2008-03-01 00:00’::timestamp,
’2008-03-04 12:00’, ’10 hours’);
generate_series
---------------------
2008-03-01 00:00:00
2008-03-01 10:00:00
2008-03-01 20:00:00
2008-03-02 06:00:00
2008-03-02 16:00:00
2008-03-03 02:00:00
2008-03-03 12:00:00
2008-03-03 22:00:00
2008-03-04 08:00:00
(9 rows)

原文地址:https://www.cnblogs.com/songyuejie/p/5362841.html