같은 값의 제한된 (고유 한 FK) 열을 UPDATE 할 때 성능에 영향이 있습니까 (예 : 중복 인덱스 조회)? (field2
는 UNIQUE
로 정의하고 field3
는 FK이다)Postgresql UPDATE 동일한 값을 갖는 제한된 열
0
A
답변
3
예, 있습니다
UPDATE pojo SET field1=?, field2=?, field3=?, ... WHERE ...
처럼 모든 필드에 대한
말은, 내 POJO의 field1
을 변경했지만, UPDATE 수행됩니다 . PostgreSQL은 일부 장소에서 그것들을 최적화하려고 시도하지만 지원은 약간 제한적입니다.
한편으로는 weird effects with locking and foreign keys이 발생할 수 있습니다.
또 다른 이유로 인덱스 행이 업데이트되지 않도록하고 그렇지 않은 경우 인덱스 업데이트를 강제 실행합니다.
일반적으로 유일한 키 필드에 대한 문제는 아니지만 TOASTed 필드를 업데이트에서 제외하지 않고 같은 값으로 업데이트하면 다시 TOAST 데이터를 다시 쓰게됩니다 전적으로. 이것은 공간 및 디스크 I/O 낭비입니다.
가능한 경우 그러한 업데이트를 피하십시오. 실제로 변경 한 필드 만 업데이트하십시오.
관련 문제
- 1. 동일한 열 값을 갖는 행 얻기
- 2. PostgreSQL UPDATE 하위 문자열 대체
- 3. 동일한 검색 열 값을 갖는 SQL 검색 값
- 4. 동일한 최대 값을 갖는 데이터를 선택하는 방법
- 5. 테이블 범위에서 특정 값을 갖는 제약 열
- 6. 여러 값을 갖는 MySQL 데이터베이스 열
- 7. Postgresql : update 명령이 중지되지 않습니다.
- 8. 업데이트 열 값 PostgreSQL
- 9. 제한된 값을 갖는 정수에 대한 mysql 빌드 인덱스
- 10. 리눅스 : 동일한 파일에 동일한 값을 갖는 두 개의 라인 가입
- 11. 특정 값을 갖는 데이터 프레임에서 열 추출
- 12. 특정 값을 갖는 R의 서브 세트 열
- 13. 행의 최대 값을 갖는 열 이름 얻기
- 14. 동일한 값을 갖는 전체 배열을 비교하는 방법
- 15. 배열을 반복하고 동일한 값을 갖는 인덱스를 삭제합니다.
- 16. 동일한 값을 갖는 wchar 배열 요소 채우기
- 17. JavaScript 객체에서 동일한 값을 갖는 여러 키
- 18. 여러 필드에서 동일한 값을 갖는 레일스 양식
- 19. 업데이트시 PostgreSQL 증가 시리얼 열
- 20. MySQL 동일한 열 값을 가진 행을 선택하십시오.
- 21. 테이블의 자동 증가 기본 키와 동일한 값을 갖는 방식으로 새 행의 열 값을 설정하려면 어떻게해야합니까?
- 22. 다른 열이 최대 값을 갖는 행의 열 값을 얻는 방법?
- 23. MySQL SELECT : 동일한 테이블의 열 값을 기반으로 여러 열 반환
- 24. 오라클의 동일한 행에있는 값을 사용하여 열 업데이트
- 25. UPDATE 여러 열 2008
- 26. UPDATE 하나의 테이블 열
- 27. 특정 값을 새 열로 갖는 Dataframe의 열 목록을 반환하십시오.
- 28. 다중 연결에서 NULL 값을 갖는 다중 열 고유 인덱스의 동작
- 29. PostgreSQL - 관련 테이블의 열 복사
- 30. 비 자동 증가 레일/postgresql 열