什么是删除重复项但保留其他列数据的SQL语句?

Rom*_*gan 3 sql oracle plsql duplicate-data

我想知道什么是SQL语句(对于ORACLE DBMS)将返回唯一(通过CUSTOMER_ID,VEHICLE_ID,DEALER_ID和EVENT_TYPE_ID)行,但它也将返回该行的最新日期(EVENT_INITIATED_DATE).我已经尝试过DISTINCT和GROUP BY,但是无法弄清楚如何处理EVENT_INITIATED_DATE(即DATE数据类型).

CUSTOMER_ID            VEHICLE_ID             DEALER_ID  EVENT_TYPE_ID          EVENT_INITIATED_DATE      
---------------------- ---------------------- ---------- ---------------------- ------------------------- 
22197630               23093399               6040       20                     11-JAN-07                 
22197630               23093399               6040       5                      11-JAN-07                 
22197630               23093399               6040       4                      11-JAN-07                 
22197630               23093399               6040       3                      11-JAN-07                 
22197630               23093399               6040       4                      19-JAN-06                 
Run Code Online (Sandbox Code Playgroud)

Red*_*ter 6

select CUSTOMER_ID, VEHICLE_ID, DEALER_ID, EVENT_TYPE_ID, 
    max(EVENT_INITIATED_DATE)
from MyTable 
group by CUSTOMER_ID, VEHICLE_ID, DEALER_ID, EVENT_TYPE_ID
Run Code Online (Sandbox Code Playgroud)