반응형
뷰 열에 인덱스를 만들 수 있습니까?
보기에 인덱스를 만들 때 다음 오류가 표시됩니다.
ORA-01702: 여기서는 보기가 적합하지 않습니다.
create view xx_emp for select * from emp;
그 이유는 무엇입니까?
보기 위에 인덱스를 만들 수 없습니다. 이는 쿼리에 불과합니다.
대신 구체화된 보기에 대한 인덱스를 작성할 수 있습니다.구체화된 뷰는 뷰를 평가하여 작성된 테이블로, 테이블 위에 인덱스를 작성할 수 있습니다.그러나 구체화된 뷰는 정의된 기본 테이블의 각 수정에 대해 업데이트되지 않으므로 다음 작업을 수행해야 합니다.REFRESH
다시 계산해야 할 때입니다.
TABLE 열에 인덱스를 정의합니다(예: EMP).EMP_ID)
create index emp_idx on emp (emp_id);
보기를 쿼리하는 동안 사용합니다.
select * from xx_emp where emp_id = 1;
이는 복잡한 보기에서는 작동하지 않지만 단순한 경우에는 인덱스가 데이터에 액세스하는 데 사용됩니다(대부분의 경우).
사용할 수 있습니다.INDEXED VIEW
다른 키워드SHEMABINDING
자세한 내용은 MSSQL에서 확인하십시오. https://dbtut.com/index.php/2019/03/24/what-is-indexed-view-in-sql-server-and-how-to-create-an-indexed-view/
언급URL : https://stackoverflow.com/questions/31189274/is-it-possible-to-create-index-on-view-columns
반응형
'it-source' 카테고리의 다른 글
개발 및 프로덕션 데이터베이스 동기화 방법 (0) | 2023.07.30 |
---|---|
aspnet core api에서 Created(또는 CreatedAtAction/CreatedAtRoute)를 사용하는 방법 (0) | 2023.07.30 |
PHP에서 두 문자열을 알파벳 순으로 비교하는 방법은 무엇입니까? (0) | 2023.07.30 |
여러 테이블에서 SQL INSERT INTO (0) | 2023.07.30 |
Json 객체를 에이잭스에서 스프링 mvc 컨트롤러로 전달하는 방법은 무엇입니까? (0) | 2023.07.30 |