이벤트 테이블에서 마지막 이벤트와 두 번째 마지막 이벤트의 차이점

이브라힘 셀림

다음 표가 있습니다. 이벤트 테이블

만든

create table events (
    event_type integer not null,
    value integer not null,
    time timestamp not null,
    unique (event_type, time)
);

그림의 데이터가 주어지면 두 번 이상 등록 된 각 event_type에 대해 최신 값과 두 번째 최신 값의 차이를 반환하는 쿼리를 작성하고 싶습니다.

위의 데이터가 주어지면 출력은 다음과 같아야합니다.

event_type value
2          -5
3           4

다음을 사용하여 해결했습니다.

CREATE VIEW [max_date] AS
SELECT event_type, max(time) as time, value
FROM events
group by event_type
having count(event_type) >1
order by time desc;


select event_type, value
from
(
    select event_type, value, max(time)
    from(
         Select E1.event_type, ([max_date].value - E1.value) as value, E1.time
         From events E1, [max_date]
         Where [max_date].event_type = E1.event_type
         and [max_date].time > E1.time
        )
    group by event_type
 )

그러나 이것은 매우 복잡한 쿼리처럼 보이며 더 쉬운 방법이 있는지 궁금합니다.

고든 리노 프

창 기능 사용 :

select e.*,
       (value - prev_value)
from (select e.*, 
             lag(value) over (partition by event_type order by time) as prev_value,
             row_number() over (partition by event_type order by time desc) as seqnum
      from events e
     ) e
where seqnum = 1 and prev_value is not null;

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

두 번째 마지막 줄로 이동

분류에서Dev

두 번째 이벤트 중지

분류에서Dev

직원당 각 날짜의 첫 번째 이벤트와 마지막 이벤트의 차이를 어떻게 계산합니까?

분류에서Dev

이벤트 로그 .net 또는 powershell에서 첫 번째 및 마지막 이벤트 식별

분류에서Dev

마지막 키 누름 이벤트?

분류에서Dev

테이블의 마지막 두 번째 행의 배경색

분류에서Dev

테이블의 마지막 두 번째 행 가져 오기

분류에서Dev

warnings.print ()는 Apache Flink CEP의 첫 번째 이벤트를 제외하고 역순 (마지막 이벤트 먼저)으로 이벤트를 인쇄합니다.

분류에서Dev

마지막 이벤트 이후 r의 특정 날짜까지의 시차

분류에서Dev

n 번째마다 이벤트 발생

분류에서Dev

두 개의 keydown 이벤트 후 때때로 세 번째 이벤트가 수신되지 않습니다.

분류에서Dev

첫 번째 이벤트 후 이벤트 캡처 방지

분류에서Dev

Bash 스크립트, 이번 달의 두 번째에서 마지막 날까지 가져옵니다.

분류에서Dev

JQuery 두 번째 자식이 마지막 자식이면 마지막 자식이 작동하지 않습니다.

분류에서Dev

마지막 행과 두 번째 마지막 행 사이에 공백이있는 이유는 무엇입니까?

분류에서Dev

두 번째로 발생하는 기능 이벤트 중지

분류에서Dev

첫 번째와 마지막 수신 게시물의 감정 점수 차이

분류에서Dev

R 데이터 세트의 첫 번째 및 마지막 관찰

분류에서Dev

마우스 이벤트가 두 번 작동하지 않음

분류에서Dev

MySQL-두 테이블을 조인 할 때 두 번째 테이블의 마지막 항목 선택

분류에서Dev

DataFrame에서 첫 번째와 마지막 데이터를 선택하는이 두 가지 방법의 차이점은 무엇입니까?

분류에서Dev

ListBox의 SelectionChanged 이벤트가 두 번째로 작동하지 않습니다.

분류에서Dev

사용자 지정 이벤트와 SystemEvent의 차이점

분류에서Dev

SQLite3 사용자 별 마지막 이벤트 선택

분류에서Dev

그룹화의 첫 번째 행과 마지막 행의 차이점

분류에서Dev

목록의 마지막 요소에 이벤트 리스너 유지

분류에서Dev

웹앱에서 사용할 Azure IOT Hub의 마지막 이벤트 저장

분류에서Dev

올빼미 회전 목마의 두 번 탭 이벤트

분류에서Dev

파이썬에서 마지막 두 번째 단어를 자르기

Related 관련 기사

  1. 1

    두 번째 마지막 줄로 이동

  2. 2

    두 번째 이벤트 중지

  3. 3

    직원당 각 날짜의 첫 번째 이벤트와 마지막 이벤트의 차이를 어떻게 계산합니까?

  4. 4

    이벤트 로그 .net 또는 powershell에서 첫 번째 및 마지막 이벤트 식별

  5. 5

    마지막 키 누름 이벤트?

  6. 6

    테이블의 마지막 두 번째 행의 배경색

  7. 7

    테이블의 마지막 두 번째 행 가져 오기

  8. 8

    warnings.print ()는 Apache Flink CEP의 첫 번째 이벤트를 제외하고 역순 (마지막 이벤트 먼저)으로 이벤트를 인쇄합니다.

  9. 9

    마지막 이벤트 이후 r의 특정 날짜까지의 시차

  10. 10

    n 번째마다 이벤트 발생

  11. 11

    두 개의 keydown 이벤트 후 때때로 세 번째 이벤트가 수신되지 않습니다.

  12. 12

    첫 번째 이벤트 후 이벤트 캡처 방지

  13. 13

    Bash 스크립트, 이번 달의 두 번째에서 마지막 날까지 가져옵니다.

  14. 14

    JQuery 두 번째 자식이 마지막 자식이면 마지막 자식이 작동하지 않습니다.

  15. 15

    마지막 행과 두 번째 마지막 행 사이에 공백이있는 이유는 무엇입니까?

  16. 16

    두 번째로 발생하는 기능 이벤트 중지

  17. 17

    첫 번째와 마지막 수신 게시물의 감정 점수 차이

  18. 18

    R 데이터 세트의 첫 번째 및 마지막 관찰

  19. 19

    마우스 이벤트가 두 번 작동하지 않음

  20. 20

    MySQL-두 테이블을 조인 할 때 두 번째 테이블의 마지막 항목 선택

  21. 21

    DataFrame에서 첫 번째와 마지막 데이터를 선택하는이 두 가지 방법의 차이점은 무엇입니까?

  22. 22

    ListBox의 SelectionChanged 이벤트가 두 번째로 작동하지 않습니다.

  23. 23

    사용자 지정 이벤트와 SystemEvent의 차이점

  24. 24

    SQLite3 사용자 별 마지막 이벤트 선택

  25. 25

    그룹화의 첫 번째 행과 마지막 행의 차이점

  26. 26

    목록의 마지막 요소에 이벤트 리스너 유지

  27. 27

    웹앱에서 사용할 Azure IOT Hub의 마지막 이벤트 저장

  28. 28

    올빼미 회전 목마의 두 번 탭 이벤트

  29. 29

    파이썬에서 마지막 두 번째 단어를 자르기

뜨겁다태그

보관