2013-07-17 34 views
-2

假设我有两个日期,第一个日期(2013-07-07)和第二个日期(2013-05-07) 如果我想检查第二个日期是否大于或等于第一个日期。 那么如何使用postgresql是可能的?如何检查使用postgresql的日期之间的差异?

+0

这是一个转让问题或类似情况? **在发布之前,您已经尝试了什么**? –

+0

我想完成一个任务,我已经完成了,但实际上我是新来的postgresql这就是为什么我要求 – user2582312

回答

0
SELECT date '2013-05-07' < date '2013-07-07' 

结果是TRUE

您还可以使用转换语法,如果这使得它更清晰:

SELECT '2013-05-07'::date < '2013-07-07'::date 

SQLFiddle demo

1

我强烈建议the PostgreSQL tutorial,其中将向您介绍SQL的基本知识,如数据类型,比较运算等

在最简单的情况下,有两个文本的日期,你会写:

SELECT DATE '2013-07-07' <= DATE '2013-05-07'; 

这是一个返回布尔结果的表达式。

在你会写的东西更像一个典型的案例:

SELECT blah FROM sometable WHERE some_date_column <= DATE '2013-05-07'; 

或参数替换DATE '2013-05-07',引用另一列,等等。你只有当你包括一个文本日期写DATE 'blah'串。在引用列或查询参数时,不需要DATE关键字。

user manual page on date/time operators and functions也将知识性,但我注意到,它实际上并没有明确提到<<==,以及其他基本有序运营。 the page on the date/time types也不是。猜猜我应该写一个文档补丁来明确。

您可能还想读Josh's write-up on PostgreSQL date/time types for users of T-SQL, etc。音调有点奇怪,但是信息丰富。

最后,由于您是通常对PostgreSQL和SQL的新手,我强烈建议您阅读this website和给出here的解释,以了解如何保护应用程序免受错误,错误和安全问题的常见原因影响。

+0

感谢您的友好建议克雷格 – user2582312