数码资讯
一些地方注意当使用PostgreSQL的日期类型
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
我们不会感到惊讶,当我们用钢轨的人看到5周。from_nowor3。天。+ 2.hours,例如,以同样的方式,它能做到的,你可以通过简单地调用PostgreSQL内置函数一样的功能。
当前时间日期/时间戳
获取当前时间有很多方法,在此之前我们需要知道以下两种类型的差异:
总是返回当前值(clock_timestamp())
总是返回当前值,但是在事务中它返回事务开始的时间(现在())
让我们看下面的例子
Postgres = #开始;
Postgres = #现在选择();
现在
氨
2013-08-26 12:17:43.182331 + 02
Postgres = #现在选择();
现在
氨
2013-08-26 12:17:43.182331 + 02
Postgres = #选择clock_timestamp();
clock_timestamp
氨
2013-08-26 12:17:50.698413 + 02
Postgres = #选择clock_timestamp();
clock_timestamp
氨
2013-08-26 12:17:51.123905 + 02
你会发现clock_timestamp返回值()改变每次执行语句,但现在()始终返回相同的值。当你需要考虑时区,你应该特别注意这两个函数之间的差异。
时间间隔:例如,3天前
使用区间运算符,您可以轻松地构建一个时间间隔,例如
间隔1天
间隔5天
间隔5天+间隔3小时
间隔5天3小时
如您所见,我们可以使用区间运算符进行简单的数学运算,尤其适用于3天前建立这样一个时间间隔,例如:
Postgres = #现在选择()间隔3天;
柱
氨
2013-08-23 12:23:40.069717 + 02
得到周
有时,对于一个给定的时间,你只想知道天是什么或者它属于那个世纪,或者你只想知道它是一年中的第几天。这个功能是通过提取()函数在PostgreSQL提供。
下面的例子在8月26日星期一进行了测试。
Postgres = #选择提取(从现在开始());
date_part
在
二十六
Postgres = #选择提取(道琼斯指数从现在());
date_part
在
一
提取()还有其他更强大的功能。有关详情,请参阅官方文件,其中只有少数列出。
天
世纪
道琼斯指数(星期天)
Doy(年月日)
分钟
月
年
时区转换
在某些情况下,时区转换在不同时间zone.at时区的一个特定的时间是特别有用的提供了这个功能,它是如何做的呢我们将在一个事务中演示,因为现在()函数总是在同一事务中返回相同的值,因此我们可以很容易地看到在同一时间显示的不同的差异。
Postgres = #开始;
开始
Postgres = #现在选择();
现在
氨
2013-08-26 12:39:39.122218 + 02
Postgres = #现在选择()在时间zone'gmt;
时区
----------------------------
2013-08-26 10:39: 39.122218
Postgres = #现在选择()在时间zone'gmt + 1;
时区
----------------------------
2013-08-26 09:39: 39.122218
Postgres = #现在选择()在时间zone'pst;
时区
----------------------------
2013-08-26 02:39: 39.122218
当前时间日期/时间戳
获取当前时间有很多方法,在此之前我们需要知道以下两种类型的差异:
总是返回当前值(clock_timestamp())
总是返回当前值,但是在事务中它返回事务开始的时间(现在())
让我们看下面的例子
Postgres = #开始;
Postgres = #现在选择();
现在
氨
2013-08-26 12:17:43.182331 + 02
Postgres = #现在选择();
现在
氨
2013-08-26 12:17:43.182331 + 02
Postgres = #选择clock_timestamp();
clock_timestamp
氨
2013-08-26 12:17:50.698413 + 02
Postgres = #选择clock_timestamp();
clock_timestamp
氨
2013-08-26 12:17:51.123905 + 02
你会发现clock_timestamp返回值()改变每次执行语句,但现在()始终返回相同的值。当你需要考虑时区,你应该特别注意这两个函数之间的差异。
时间间隔:例如,3天前
使用区间运算符,您可以轻松地构建一个时间间隔,例如
间隔1天
间隔5天
间隔5天+间隔3小时
间隔5天3小时
如您所见,我们可以使用区间运算符进行简单的数学运算,尤其适用于3天前建立这样一个时间间隔,例如:
Postgres = #现在选择()间隔3天;
柱
氨
2013-08-23 12:23:40.069717 + 02
得到周
有时,对于一个给定的时间,你只想知道天是什么或者它属于那个世纪,或者你只想知道它是一年中的第几天。这个功能是通过提取()函数在PostgreSQL提供。
下面的例子在8月26日星期一进行了测试。
Postgres = #选择提取(从现在开始());
date_part
在
二十六
Postgres = #选择提取(道琼斯指数从现在());
date_part
在
一
提取()还有其他更强大的功能。有关详情,请参阅官方文件,其中只有少数列出。
天
世纪
道琼斯指数(星期天)
Doy(年月日)
分钟
月
年
时区转换
在某些情况下,时区转换在不同时间zone.at时区的一个特定的时间是特别有用的提供了这个功能,它是如何做的呢我们将在一个事务中演示,因为现在()函数总是在同一事务中返回相同的值,因此我们可以很容易地看到在同一时间显示的不同的差异。
Postgres = #开始;
开始
Postgres = #现在选择();
现在
氨
2013-08-26 12:39:39.122218 + 02
Postgres = #现在选择()在时间zone'gmt;
时区
----------------------------
2013-08-26 10:39: 39.122218
Postgres = #现在选择()在时间zone'gmt + 1;
时区
----------------------------
2013-08-26 09:39: 39.122218
Postgres = #现在选择()在时间zone'pst;
时区
----------------------------
2013-08-26 02:39: 39.122218
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。