고객이 수행 한 각 작업마다 업데이트되는 데이터 세트가 있습니다. id
이 기능을 파일에서 점점된다 예를 들어, 나는동일한 테이블에 마지막으로 삽입 된 두 개의 행의 열 값을 비교하는 방법은 무엇입니까?
select id,
referance
from (select id,
referance,
row_number()
over (order by time desc) as seqnum
from mytable where id=':id')
al where seqnum <= 2
하여 고객의 마지막 두 작업을 얻고있다. 하지만 이제는이 두 작업의 참조 값을 비교해야합니다.
MYTABLE : 등등
id | name | referance | time |
-------------------------------------
11 | abc | 4589 | 09:05 |
11 | abc | 1234 | 09:04 |
10 | xyz | 0185 | 09:02 |
15 | qpr | 9564 | 08:54 |
... 다시
, 내가 ID로 마지막 두 행을 얻을 수 = 11; 그리고 모든 열이 (null)이 아닌 한, 그것은 내가 "문자 그대로"원하는 "true"를 반환하고 있습니다. 그러나 그들의 추천이 동일하거나 아닌지 비교하고 싶습니다. 쿼리를 호출하면 "true"또는 "false"를 반환해야합니다.
미리 감사드립니다.
P. 사실은 유용한 기능이나 아이디어가 필요합니다. 이미 내부 조인을 사용하려고하지만 couldnt는 그것을 관리했습니다
select table1.id,
table1.referance,
table2.id,
table2.referance
from (select id,
referance,
row_number()
over (order by time desc) as seqnum
from mytable where id=':id') table1
inner join (select id,
referance,
row_number()
over (order by time desc) as seqnum
from mytable where id=':id') table2
on table1.referance != table2.referance
al where seqnum <= 2 order by seqnum
답변을 읽을 때 혼란을 피하기 위해 '참조'의 맞춤법이 잘못되었습니다. 이것은 테이블 생성 스크립트의 실수 일 가능성이 있지만 나중에 나올 수 있습니다. –