다음과 같이 MySQL 데이터베이스(MariaDB 10.3)를 통해 쿼리를 실행하고 있습니다.
으아악주어진 순서가 포함된 이 테이블의 예는 다음과 같습니다.
id | ... | 우선순위 | 유효_날짜 |
---|---|---|---|
3 | ... | 2 | 2022-07-01 12:00:00 |
7 | ... | 2 | 2022-07-03 12:00:00 |
6 | ... | 2 | 2022-07-04 12:00:00 |
9 | ... | 1 | 2022-07-02 12:00:00 |
4 | ... | 1 | 2022-07-05 12:00:00 |
11 | ... | 1 | 2022-07-05 12:00:00 |
이제 특정 레코드의 ID가 있고 쿼리 결과에서 해당 레코드 이전/이후의 레코드를 SQL을 통해 주어진 순서대로 검색하려고 합니다. 레코드 ID가 6
,我想分别返回 ID 为 9
和 7
인 레코드가 있다고 가정해 보겠습니다.
단일 쿼리로 쉽게 얻을 수 있는 단일 고유 열을 기준으로 정렬하지만 여러 개의 고유하지 않은 열을 처리하는 방법을 잘 모르겠습니다. 누군가 이것을 달성하는 방법을 말해 줄 수 있습니까?
P粉7637488062024-03-23 10:39:29
Paul Maxwell의 LEAD
和 LAG
팁에 따라 다음과 같은 채용 쿼리를 작성할 수 있었습니다.
LAG
에 해당하는 이전 기록을 검색합니다.