최근에 MySQL에 offset
기능 이 있다는 것을 알았습니다 . 오프셋 결과 또는 오프셋과 한계 변형의 차이점에 대한 설명서를 찾으려고했지만 원하는 것을 찾을 수없는 것 같습니다.
테이블에 10.000 개의 행이 있고 1.000 행에서 25 개의 결과를 원한다고 가정 해 봅시다. 지금까지 얻은 한 동일한 결과를 얻기 위해 두 가지를 모두 할 수 있습니다.
SELECT id,name,description FROM tablename LIMIT 1000,25
SELECT id,name,description FROM tablename LIMIT 25 OFFSET 1000
내가 알고 싶은 것은 둘 사이의 차이점입니다.
- 이것은 실제로 동일하게 작동합니까, 아니면 내 이해가 잘못 되었습니까?
- 큰 테이블에서 하나 더 느리거나 빠릅니다.
- 내가 할 때 오프셋의 결과가 변경됩니까
WHERE column=1
(열의 값이 100 이상임) - 내가 할 때 오프셋의 결과가 변경됩니까
ORDER BY column ASC
(임의의 값이 있다고 가정)
이것이 '멍청한'질문이고 누군가 주제를 밝히는 문서를 알고 있다면 답장에 추가하십시오.
느낌 오프셋이 정렬 및 위치를 무시하고 데이터베이스에서 발견 된 첫 번째 X 행을 건너 뜁니다.
MySQL 문서는 이것을 완벽하게 설명합니다. 직접보고 싶지 않은 이유가 있습니까?
—
siride
"PostgreSQL과의 호환성을 위해 MySQL은 LIMIT row_count OFFSET 오프셋 구문도 지원합니다." ( dev.mysql.com/doc/refman/5.5/en/select.html에서 )
—
siride
이것은 여전히 내 질문에 대답하지 않기 때문입니다. 귀하의 견적 (및 페이지의 텍스트)에서 오프셋이 한계와 동일한 것으로 결론을 내릴 수 있습니다.
—
Martijn
같은 것을 표현하는 문법이 다릅니다. 다른 하위 질문은 제목 및 게시물의 첫 부분과 완전히 다릅니다.
—
siride
동일한 경우 다른 쿼리는 두 상황에서 다르게 영향을 미치지 않습니다. 나는 그것이 똑같은 것이라는 것을 확신하지 못했습니다. 그것은 내가 찾고있는 대답이었습니다. 감사합니다.
—
Martijn