sql - 查询日程日期比较

标签 sql oracle

我有一个这样的表:

account number(repeat) | schedule_due_date
---------------------- | -----------------
111                    | '01-FEB-2017'
111                    | '01-MAR-2017'
111                    | '01-APR-2017'

我想要一个 SQL 查询,如果 schedule_due_date 是第一个或最后一个,它将给出帐号。

如果sysdate01-FEB-2017那么它应该给出帐号,或者如果sysdate01-APR- 2017 那么它应该给出帐号。

但是,如果 sysdate01-MAR-2017 那么它不应该提供帐号。 实际上,它应该使用 sysdate 检查所有帐户的最小日期和最大日期并给出结果。

最佳答案

尝试下面的方法(使用GROUP BYHAVING可以解决这个问题)。

SELECT  account_number
FROM    table1
GROUP BY    account_number
HAVING  MAX(schedule_due_date) = sysdate
    OR  MIN(schedule_due_date) = sysdate

关于sql - 查询日程日期比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42642900/

相关文章:

sql - Postgres 地理定位点距离

sql - block 过程 PL/SQL 与 Oracle

mysql - 在 MySQL 中创建触发器来记录数据库中的更改

SQL连接问题

MySQL Group by Sum by Day

java - 尝试从 Oracle 数据库导出 java 源代码

java - 如何为范围内缺失的日期创建行?

oracle - oracle 12.1 db sqlplus 错误乱码

sql - 在 Oracle SQL Developer 中执行存储过程

sql - SELECT DISTINCT 返回 DATE 列的重复值