根据两列重复值找出唯一的***记录[重复]

Posted

技术标签:

【中文标题】根据两列重复值找出唯一的***记录[重复]【英文标题】:Find out unique top record based on two columns duplicate value [duplicate] 【发布时间】:2021-09-22 07:26:33 【问题描述】:

以下是一些数据

现在我想只检索那些具有唯一 current_position_latitude 和 current_position_longitude 和 top 记录的记录,方法是使用 sys_movement_evt_id 的 order by。这低于我需要的输出。

我当前的查询是

select
        CURRENT_POSITION_LATITUDE,
        CURRENT_POSITION_LONGITUDE,
        SYS_EVT_TARGET_ID,
        SYS_MOVEMENT_EVT_ID
from TMS_MOVEMENT_EVT
where SYS_EVT_TARGET_ID = 10245 and
      CURRENT_POSITION_LATITUDE is not null and CURRENT_POSITION_LATITUDE != 0 and 
      CURRENT_POSITION_LONGITUDE is not null and CURRENT_POSITION_LONGITUDE != 0 

请告诉我如何实现所需的输出。

【问题讨论】:

【参考方案1】:

您可以使用 RANK() 函数实现此目的

with CTE_DATA AS (
                  SELECT
                         CURRENT_POSITION_LATITUDE,
                         CURRENT_POSITION_LONGITUDE,
                         SYS_EVT_TARGET_ID,
                         SYS_MOVEMENT_EVT_ID
                         RANK() OVER(PARTION BY CURRENT_POSITION_LATITUDE, 
                                                 CURRENT_POSITION_LONGITUDE
                                      ORDER BY SYS_MOVEMENT_EVT_ID DESC) LAT_RANK
                  FROM TMS_MOVEMENT_EVT
                 )
SELECT
      CURRENT_POSITION_LATITUDE,
      CURRENT_POSITION_LONGITUDE,
      SYS_EVT_TARGET_ID,
      SYS_MOVEMENT_EVT_ID
FROM CTE_DATA
WHERE LAT_RANK = 1

Some info on using RANK()

【讨论】:

以上是关于根据两列重复值找出唯一的***记录[重复]的主要内容,如果未能解决你的问题,请参考以下文章

wps两列数据找出重复项

excel使用记录(转)

根据两列分配唯一 ID [重复]

excel中两列都有重复值,怎样筛选出两列唯一值?

从不同的相关记录组中选择两列之一中包含重复值的所有行

Excel如何把两列中相同的数据找出,并对应内容排列?