티스토리 뷰
오라클은 SELECT를 전달할 때 '힌트(hint)라는 것을 사용할 수 있다.
힌트
: 지금 내가 전달한 select문을 이렇게 실행해 주면 좋겠다 라는 힌트이다.
힌트는 select 문을 어떻게 처리하는지에 대한 힌트일 뿐이므로 힌트 구분에서 에러가 나도 SQL실행에 전혀 지장을 주지 않는다. 힌트는 개발자가 데이터베이스에 어떤 방식으로 실행해줘야 하는지를 명시하기 때문에 조금 강제성이 부여되는 방식이다.
select * from tb_board order by bno desc;
select *+INDEX_DESC (tb_board pk_board) */ * from tb_board;
위의 두 SQL은 동일한 결과를 생성한다.
힌트를 통해 인덱스 자체가 정렬을 해 둔 상태이므로 이를 통해서 SORT과정을 생략하기 위한 용도로 사용할 수 있다.
ROWNUM
ROWNUM은 데이터를 가져올 때 적용되는 것이고, 이 후에 정렬되는 과정에서는 ROWNUM이 변경되지 않는다.
ROWNUM의 의미가 테이블에서 데이터를 가져오면서 붙는 번호라는 사실을 기억해 보면 결국 테이블에 어떤 순서로 접근하는가에 따라서 ROWNUM값은 바뀔 수 있다는 의미이다.
'ALL > Database' 카테고리의 다른 글
[Book] 친절한 SQL 튜닝 - SQL 처리 과정과 I/0 - SQL 공유 및 재사용 (0) | 2023.05.08 |
---|---|
[Book] 친절한 SQL 튜닝 - SQL 처리 과정과 I/0 - SQL 파싱과 최적화 (0) | 2023.05.08 |
인덱스(Index) 특징, 성능과 관련하여 (0) | 2022.12.13 |
GROUP BY | ROLLUP | CUBE | GROUPING SETS (0) | 2022.12.06 |
NL (Nested Loop Join) (0) | 2022.12.05 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- React
- JavaScript
- 데브캠프
- di
- node
- 이정환
- 스프링 프로젝트
- 객체지향
- Spark
- @Configuration
- 스프링의정석
- 친절한SQL튜닝
- security
- 인덱스
- Node.js
- 자바의정석
- EC2
- 스프링
- 시큐리티
- 리액트
- MySQL
- 코드로 배우는 스프링 웹 프로젝트
- 자바스크립트
- spring
- AWS
- 남궁성
- 한입크기로 잘라먹는 리액트
- 데이터베이스
- 컨테이너
- 스프링 빈
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함