多条数据中按时间倒排序后,取第一条的一个字段和最后一条数据的另一个字段。
SELECT
DISTINCT
MESSAGEID,
FIRST_VALUE (OLDPROBLEMTYPEID) OVER (PARTITION BY MESSAGEID ORDER BY CHANGETIME ROWS BETWEEN unbounded preceding AND unbounded following) AS OLDPROBLEMTYPEID,
LAST_VALUE (NEWPROBLEMTYPEID) OVER (PARTITION BY MESSAGEID ORDER BY CHANGETIME ROWS BETWEEN unbounded preceding AND unbounded following) AS NEWPROBLEMTYPEID
FROM
XX_MESSAGECHANGE
原数据结构:
封装后的数据结构: