pgsql 的一些函数

正在使用pgsql,学了一下相关函数
做一下记录
pgsql时间相关函数:

-- SELECT age(timestamp '1984-02-16') ;
-- SELECT CURRENT_DATE;
-- SELECT CURRENT_TIME;
-- SELECT CURRENT_TIMESTAMP;
-- SELECT date_trunc('hour', timestamp '2001-02-16 20:38:40');
-- SELECT extract('hour' from timestamp '2001-02-16 20:38:40');
-- SELECT LOCALTIMESTAMP;
-- SELECT LOCALTIME;
-- SELECT now();
-- SELECT timeofday();
-- SELECT EXTRACT(doy FROM LOCALTIMESTAMP);
-- SELECT EXTRACT(epoch FROM CURRENT_DATE)*1000;
-- SELECT EXTRACT('hour' FROM LOCALTIMESTAMP);
-- SELECT date_part('hour', CURRENT_TIMESTAMP);
-- SELECT date_part('day', TIMESTAMP '2001-02-16 20:38:40');
-- SELECT EXTRACT(MILLISECONDS  from LOCALTIMESTAMP);
-- SELECT EXTRACT(SECOND from CURRENT_TIMESTAMP);
-- SELECT EXTRACT(MINUTE FROM LOCALTIMESTAMP);
-- SELECT date_part('MINUTE', LOCALTIMESTAMP);
-- 该天所在的季度
-- SELECT EXTRACT(quarter from LOCALTIMESTAMP);
-- 世纪
-- SELECT EXTRACT(CENTURY FROM TIMESTAMP '2000-12-16 12:21:13');

-- OVERLAPS:这个表达式在两个时间域(用它们的终点定义)重叠的时候生成真值。 
-- 终点可以以一对日期,时间,或者时间戳来声明;或者是一个后面跟着一个时间间隔的 日期,时间,时间戳。
-- SELECT (DATE '2001-02-16', DATE '2001-12-21') OVERLAPS (DATE '2001-10-30', DATE '2002-10-30');
-- Result: true
-- SELECT (DATE '2001-02-16', INTERVAL '100 days') OVERLAPS (DATE '2001-10-30', DATE '2002-10-30');
-- Result: false

– 查询0-1之间的随机数
SELECT random();

generate_series(start, stop) 生成一个数值序列,从 start 到 stop,步进为一。
generate_series(start, stop, step) 生成一个数值序列,从 start 到 stop,步进为 step。
例:

SELECT generate_series(0,100,5);
    SELECT generate_series(0,10);

猜你喜欢

转载自blog.csdn.net/qq_41139036/article/details/80776265