기타/Oracle
Oracle veiw, index 생성
공부하는리아
2020. 11. 27. 17:07
복잡한 질의 일수록 그 길이가 길어진다.
하지만 veiw를 만들면 그 veiw에서 쉽게 값을 출력 할 수 있다.
view는 물리적으로 존재하지 않는 테이블이다
SELECT ORDERS.ORDERID 주문번호,
CUSTOMER.NAME 주문고객,
BOOK.BOOKNAME 주문도서,
BOOK.PRICE 도사정가,
ORDERS.SALEPRICE 구입가격,
ORDERS.ORDERDATE 주문일자,
BOOK.PRICE - ORDERS.SALEPRICE 할인가
FROM BOOK, CUSTOMER, ORDERS
WHERE ORDERS.BOOKID = BOOK.BOOKID
AND CUSTOMER.CUSTID = ORDERS.CUSTID;
위와 같은 질의를 이용해 뷰를 만들어 보자.
*연산이 있을 경우엔 꼭 구별 값을 (ex 할인가) 붙여주어야 에러가 안난다.
위 질의는 이렇게 축약될 수 있다
SELECT * from 뷰이름;
뷰 쿼리를 불러와 vo.값을 찍을 경우 구별값을 꼭 맞춰준다.
vo.setDiscount(rs.getInt("할인가"));
그렇지 않으면 에러가 뜬다.
index는 select 했을 때 순서를 무엇을 기준으로 출력할지 설정해주는 것이다
여러모로 유용할 것 같다.