Oracle SQL Select Date Time с самым ранним временем - PullRequest
0 голосов
/ 14 мая 2019

У меня есть запрос, который возвращает

enter image description here

И я хотел бы вернуть это, когда выбран самый ранний час того же дня

enter image description here

Пока это мой запрос --- MIN(I.CREATIONDATE) возвращает желаемый формат даты и времени, я надеялся, что MIN выберет самое раннее время.

   SELECT TO_CHAR(MIN(I.INCIDENTID))               AS "Incident ID",
          MIN(I.CREATIONDATE)                      AS "Creation Date",
          TO_CHAR(I.CREATIONDATE,'MM-DD-YYYY')     AS "Date",
          TRIM(MO.DOMAINUSERNAME)                  AS "Login ID",  
          TRIM(M.MESSAGESUBJECT)                   AS "Email Subject"
   FROM   MESSAGE M 
   JOIN   INCIDENT I 
   ON     M.MESSAGESOURCE = I.MESSAGESOURCE 
   AND    M.MESSAGEID = I.MESSAGEID
   AND    M.MESSAGEDATE = I.MESSAGEDATE 
   JOIN   MESSAGEORIGINATOR MO
   ON     M.MESSAGEORIGINATORID = MO.MESSAGEORIGINATORID                   
   GROUP BY TO_CHAR(I.CREATIONDATE,'MM-DD-YYYY'),
            TRIM(MO.DOMAINUSERNAME),
            TRIM(M.MESSAGESUBJECT)

1 Ответ

1 голос
/ 14 мая 2019

Использование row_number()

with CTE as
(
select t1.*, 
       row_number() over (partition by trunc(creation_date) order by creation_date) rn
from Mytable t1
)
select *
from CTE
where rn = 1
...