【发布时间】:2016-02-16 15:38:08
【问题描述】:
我想根据以下条件消除行
如果列WORK_DATE 有重复的日期,那么我需要排除基于CHEQUE_DATE 为23-JAN-2015 的行,但保留其他行。
主唯一键是EMP_ID
表格内容:
EMP_ID | WORK_DATE | CHEQUE_DATE
------------------------------------
12345 | 10-SEP-2014 | 23-JAN-2015
12345 | 10-SEP-2014 | 03-OCT-2015
32789 | 14-OCT-2014 | 23-JAN-2015
32789 | 14-OCT-2014 | 10-OCT-2015
因此,在所有员工的工作日期重复的情况下,删除具有CHEQUE_DATE 或Jan 23, 2015 的行。
我想可以使用UNION 子句来解决。
【问题讨论】:
-
主键怎么可能是
col1?它有重复。 -
您希望在输出中看到什么?另外,指定 cheque_date 背后的逻辑是什么?您是在最新 cheque_date 的那一行之后吗?
-
Gordon,是的,我很抱歉,唯一的 cols 是 col1、col2 和 col3
标签: sql oracle duplicates