PostgreSQL 的日期操作
发布时间:2020-12-13 17:13:46 所属栏目:百科 来源:网络整理
导读:一 取当前日期的函数 --取当前时间 skytf= select now(); now ------------------------------- 2011-06-03 14:45:43.633466+08 (1 row) skytf= select current_timestamp; now ------------------------------- 2011-06-03 14:46:58.768399+08 --取当前时间
一 取当前日期的函数 --取当前时间 skytf=> select now(); now ------------------------------- 2011-06-03 14:45:43.633466+08 (1 row) skytf=> select current_timestamp; now ------------------------------- 2011-06-03 14:46:58.768399+08 --取当前时间的日期 skytf=> select current_date; date ------------ 2011-06-03 (1 row) --取当前具体时间 (除去日期) skytf=> select current_time; timetz -------------------- 14:46:29.404942+08 (1 row) 二 日期的加减 skytf=> select now(); now ------------------------------- 2011-06-03 14:54:04.771193+08 (1 row) --表示三天后 skytf=> select now() + interval '3 day'; ?column? ------------------------------- 2011-06-06 14:54:06.119683+08 (1 row) --表示三天前 skytf=> select now() - interval '3 day'; ?column? ------------------------------- 2011-05-31 14:54:10.060558+08 (1 row) --表示1小时后 skytf=> select now() + interval '1 hour'; ?column? ------------------------------- 2011-06-03 15:55:24.600172+08 (1 row) --表示1小时前 skytf=> select now() - interval '1 hour'; ?column? ------------------------------- 2011-06-03 13:55:25.799537+08 (1 row) (1 row) --表示10分钟后 skytf=> select now() + interval '10 minutes'; ?column? ------------------------------- 2011-06-03 15:06:23.363667+08 (1 row) --表示10分钟前 skytf=> select now() - interval '10 minutes'; ?column? ------------------------------- 2011-06-03 14:46:13.899526+08 三 取时间字段的部分值 在开发过程中,经常要取日期的年,月,日,小时等值,PostgreSQL 提供一个非常便利的EXTRACT函数。 --EXTRACT函数解释 EXTRACT(field FROM source): field 表示取的时间对象, source 表示取的日期来源,类型为 timestamp。 下面是一些例子。 --取年份 skytf=> select extract (year from now()); date_part ----------- 2011 (1 row) --取月份 skytf=> select extract (month from now()); date_part ----------- 6 (1 row) --取day skytf=> select extract(day from now()); date_part ----------- 3 (1 row) skytf=> select extract(day from timestamp '2011-06-03'); date_part ----------- 3 (1 row) skytf=> select timestamp '2011-06-03'; timestamp --------------------- 2011-06-03 00:00:00 (1 row) --取小时 skytf=> select extract (hour from now()); date_part ----------- 14 (1 row) --取分钟 skytf=> select extract (minute from now()); date_part ----------- 59 (1 row) --取秒 skytf=> select extract (second from now()); date_part ----------- 46.039333 (1 row) --取所在哪个星期 skytf=> select extract (week from now()); date_part ----------- 22 (1 row) 四 总结 上面只是 PostgreSQL 日期函数的基本用法,希望这些对大家应用 PostgreSQL 起到一定作用。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |