내가 가진 : SQL은
Id | Timestamp column
---------------------------
1 | 700 (not ten, but simple to read)
2 | 800
3 | 800
4 | 800
5 | 600
내가
Id | Timestamp column
---------------------------
2 | 800
3 | 800
이제 타임 스탬프 DESC로 정렬 처음이 개 기록을 얻을, 나는 타임 스탬프 DESC 주문한 다음이 개 기록을 얻을 수 없다 ID 3과 타임 스탬프로 시작하는 800
나는 시도 :
SELECT * FROM table WHERE timestamp < 800 ORDER BY timestamp DESC LIMIT 2
하지만 Id 1과 5가 올바르지 않습니다.
또한보십시오 :
SELECT * FROM table WHERE timestamp <= 800 ORDER BY timestamp DESC LIMIT 2
은 그러나 다시 정확하지 않은 ID 2와 3을 반환합니다.
도
SELECT * FROM table WHERE timestamp <= 800 AND id > 3 ORDER BY timestamp DESC LIMIT 2
그것을 시도하지만 다시 정확하지 않은 이드는 4와 5를 반환합니다.
기타 등등 ... 시도는 모두 작동하지 않습니다.
쿼리 정확히 반환해야합니다 :
Id | Timestamp column
---------------------------
4 | 800
1 | 700
또한 ID로 주문 재생하려고하지만, 나는 그것이 작동 얻을 수 없습니다.
일부 도움이 되었습니까?
편집 : 설명 할 수 없지만 확실히 추출 된 레코드 수를 알 수 없으므로 오프셋을 사용할 수 없습니다. Id3 및 timestamp 800 ...
완벽한. 효과가 있습니다. 고맙습니다! –