글쎄, 내 문제는 내가 행을 업데이트 할 때마다이 행이 테이블의 마지막 위치로 이동한다는 것입니다. 전에 있던 장소는 중요하지 않습니다.업데이트 된 행을 PostgreSQL이 마지막 행으로 배치하는 것을 피할 수있는 방법이 있습니까?
나는이 게시물 Postgresql: row number changes on update에서 관계형 테이블의 행이 정렬되지 않았 음을 읽었습니다. 그렇다면 왜 내가 select * from table;
을 실행할 때 항상 같은 순서를 얻나요?
어쨌든, 나는 마지막 문장에 업데이트 문장을 놓지 않는 방법이 있는지 알기 위해 그것에 대한 토론을 시작하고 싶지 않습니다. 추가 정보를
편집 :
은 정말 모든 모든 결과를 얻을 싶지 않아요. 나는 자바에서 2 개의 버튼을 프로그래밍했는데, next
과 previous
이고, 여전히 초심자이기 때문에 다음 또는 이전 행을 가져와야하는 유일한 방법은 select * from table limit 1
을 사용하고 클릭 한 버튼에 따라 offset num++
또는 offset num--
을 추가하는 것이 었습니다. 따라서 업데이트를 실행하면 초기 주문 (게재 신청서)이 손실됩니다.
감사합니다.
실제로 테이블에 순서가 없습니다. 물론 매번 * 무작위 순서로 결과를 얻지는 못합니다. 시스템은 결정 론적이고 의도적으로 순서를 무작위로 추출하지 않습니다. 그러나 주문한 결과를 원하면 명시 적으로 주문해야합니다. 그렇지 않으면 순서가 보장되거나 정의되지 않습니다. – deceze
"* 그런 다음 왜 select * from 테이블을 실행할 때 항상 같은 순서를 사용합니까? *"- 간단한 대답 : 그렇지 않습니다. –
@a_horse_with_no_name 요점은 내가 그렇다는 것입니다. – Drumnbass