【PostgreSQL-9.6.3】函数(3)--日期和时间函数
在PostgreSQL中,DATE、TIME、TIMESTAMP是三种不同的数据类型。DATE表示日期类型,格式为YYYY-MM-DD或YYYYMMDD;TIME表示时间类型,格式为hh:mi:ss;
TIMESTAM类型的格式一般为'YYYY-MM-DD hh:mi:ss'。
1. current_date、current_time和localtime
current_date按照YYYY-MM-DD格式返回当前日期;current_time获取系统的当前时间;localtime的作用和current_time相同,不同点在于localtime返回的时间不带时区。
test=# select current_date,current_time,localtime;
date | timetz | time
------------+--------------------+-----------------
2017-05-31 | 21:26:47.731091+08 | 21:26:47.731091
(1 row)
2. current_timestamp、localtimestamp和now()
这三个函数的作用都是返回系统当前的日期和时间。
test=# select current_timestamp,localtimestamp,now();
now | timestamp | now
------------------------------+---------------------------+------------------------------
2017-05-31 21:28:24.17628+08 | 2017-05-31 21:28:24.17628 | 2017-05-31 21:28:24.17628+08
(1 row)
3. extract(type from date)
extract函数从日期中提取部分值。
(1)依次提取日期中的年份、月份、日部分
test=# select extract(year from timestamp '2017-05-31 21:31:20') as year,extract(month from timestamp '2017-05-31 21:31:20') as month,extract(day from timestamp '2017-05-31 21:31:20') as day;
year | month | day
------+-------+-----
2017 | 5 | 31
(1 row)
(2)依次查询指定日期是所在年的第几天、所在周的星期几、所在年的第几季度
test=# select extract (doy from timestamp '2017-05-31 21:31:20') as doy,extract (dow from timestamp '2017-05-31 21:31:20') as dow,extract(quarter from timestamp '2017-05-31 21:31:20') as quarter;
doy | dow | quarter
-----+-----+---------
151 | 3 | 2
(1 row)
4. 日期的运算
test=# select date '2017-05-31' + integer '';
?column?
------------
2017-06-10
(1 row) test=# select date '2017-05-31' + interval '5 hour';
?column?
---------------------
2017-05-31 05:00:00
(1 row) test=# select date '2017-05-31' + time '12:00';
?column?
---------------------
2017-05-31 12:00:00
(1 row) test=# select timestamp '2017-05-31 21:31:20' + interval '3 hour';
?column?
---------------------
2017-06-01 00:31:20
(1 row) test=# select date '2017-07-22' - date '2017-05-31';
?column?
----------
52
(1 row) test=# select date '2017-05-31' - integer '';
?column?
------------
2017-05-21
(1 row) test=# select 15 * interval '2 day';
?column?
----------
30 days
(1 row) test=# select 50 * interval '2 second';
?column?
----------
00:01:40
(1 row) test=# select interval '1 hour' / integer '';
?column?
----------
00:30:00
(1 row)
The End!
【PostgreSQL-9.6.3】函数(3)--日期和时间函数的更多相关文章
- 20101102--SQL字符串函数 ,日期和时间函数
--------------------字符串函数------------------------- --ASCII 返回字符串的首字母的ASCII编码 select ASCII('w') selec ...
- 日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别
1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间 ...
- MySQL 笔记 —— 日期和时间函数
[TOC] 获取当前日期的函数和获取当前时间的函数 CURDATE()和CURRENT_DATE()函数获取当前日期:CURTIME()和CURRENT_TIME()函数获取当前时间. mysql&g ...
- MySQL日期和时间函数汇总
本文基于MySQL8.0 本文介绍MySQL关于日期和时间操作的函数. 日期和时间函数 函数 描述 ADDDATE() 给日期值添加时间值 ADDTIME() 添加time CONVERT_TZ() ...
- Sql Server函数全解(四)日期和时间函数
日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外,也可以使用datetime类型的参数,但会忽略这些值的时间部分.相同 ...
- MySQL数据库9 - 日期与时间函数
一 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为数 ...
- sqlserver常用日期、时间函数和格式
Sql Server中常用的日期与时间函数1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 ...
- Sql Server函数全解<四>日期和时间函数
原文:Sql Server函数全解<四>日期和时间函数 日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外, ...
- MySQL数据库—日期与时间函数
一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...
- web报表工具FineReport常用函数的用法总结(日期和时间函数)
web报表工具FineReport常用函数的用法总结(日期和时间函数) 说明:凡函数中以日期作为参数因子的,其中日期的形式都必须是yy/mm/dd.而且必须用英文环境下双引号(" " ...
随机推荐
- img标签和background-image的区别和具体使用时机
最近在使用图片过程中,纠结到底使用img标签还是使用background-image属性,翻阅资料和百度后作出下列理解. 简单来说img是内容部分的东西,background-image是修饰性的东西 ...
- SCI 论文金句
SCI 不会写?其实英语基础好一点,文献多看一点,多写写自然就能自己写出来了.当然,你肯定会说英语真的好难,好吧,就知道你们懒得学英语了.我给你们整理了一套万能模板,涵盖了论文不同部分的常用句型. 摘 ...
- asp.net 跨域问题
asp.net 跨域问题 解决方案1: public void ProcessRequest(HttpContext context) { //解决跨域问题 context.Response.Clea ...
- 【Codeforces 429B】Working out
[链接] 我是链接,点我呀:) [题意] 两个人,一个人在左上角,一个人在左下角. 左上角要到右下角去 左下角要到右上角去 只能走到相邻的格子(不能往回走,即一个往右下,一个往右上走) 要求这两个人必 ...
- [cf 599A]Patrick and Shopping
傻逼题,但是我还是wa了一发. #include <iostream> using namespace std; int main() { long long a,b,c,Ans=0x7f ...
- code vs 3376 符号三角形
3376 符号三角形 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 如下图是由14个“+”和14个“-”组 ...
- oracle latch
(转载 : http://www.dbtan.com/2010/05/latch-free.html) Latch Free(闩锁释放):Latch Free通常被称为闩锁释放,这个名称常常引起误解, ...
- POJ 2960
也算是一道模板题吧,只需按照SG函数的定义求出每个值的SG,然后异或就可以了. #include <iostream> #include <cstdio> #include & ...
- Libs文件夹下的Jar文件为什么不会自己主动放在Android Private Libraries文件夹下
简而言之:这个问题就是由jar包反复冲突了! 这个问题一開始我出现了一种"自以为是"的答案,在Android Private Libraries文件夹下的是会打包到project可 ...
- hdu(1114)——Piggy-Bank(全然背包)
唔..近期在练基础dp 这道题挺简单的(haha).可是我仅仅想说这里得注意一个细节. 首先题意: 有T组例子,然后给出储蓄罐的起始重量E,结束重量F(也就是当它里面存满了零钱的时候).然后给你一个数 ...