从postgresql中的时间戳开始动态查询的小时

时间:2015-05-21 09:18:23

标签: sql postgresql

我有一个名为employee的表,有5列。一列名为emp_empdt,其类型为timestamp

我需要获取emp_empdt表中每条记录的employee小时值。

我知道,我们可以通过使用

来获得时间
SELECT extract(hour from timestamp '2015-05-02 20:05:12'); 

这是一个静态的query。 但现在我需要从timestamp表中获取employee值。

我用过:

SELECT h1 
from (
   select extract(hour from timestamp emp.emp_empdt) as h1 
   from employee emp
);

1 个答案:

答案 0 :(得分:3)

不需要timestamp关键字:

select extract(hour from emp_empdt) as h1 
from employee emp

表达式timestamp '2015-05-02 20:05:12'是ANSI SQL时间戳文字,关键字timestamp仅对于这样的文字是必需的。这是区分这样的表达式与字符文字('2015-05-02 20:05:12')的必要条件。