Side Project/Public
직접 경험한 DB 생생후기
NayC
2021. 5. 17. 20:41
728x90
cf) 인덱스 자료구조
- db 분야에서 테이블 동작 속도를 높여주는 자료구조
- 원본 테이브 기준으로 잘 정렬된 별도의 데이블을 생성해야 데이터 엑세스 성능을 높일 수 있음
- 정규화가 되어 있지 않은 테이블은 컬럼이 많으며, 이에 따라 조합할 수 있는 인덱스가 많아지게 됨
-> 인덱스가 많으면 갱신 성능이 많아지고 디스트 공간도 많아지므로 인덱스를 효과적으로 사용하기 위해서라도 정규화가 잘 되어 있어야 함
상황) 이전에는 한 테이블 안에 분류/제목/저자가 다 있어서 한 테이블만 불러오면 됐는데, 모델링을 배우고 난 후 3정규화 때문에 '분류'는 따로 테이블을 만들어줬다.
이렇게!
Q. sql 식을 어떻게 작성해야 하나?
- 컴마 찍어서 BOOK도 가지고 오고 CATEGORY도 가지고 오는걸까?
괜히 JOIN 배우고, 뭐 배우고 다양한 함수들 배운거 아니다.
쓰려고 배운거지!
JOIN 시킨다.
SELECT B.*, C.NAME FROM BOOK B LEFT JOIN CATEGORY C ON B.CATEGORY_ID = C.ID WHERE "+field+" LIKE '%"+query+"%' ORDER BY B.ID
1) 먼저 Book.java에 type이란걸 하나 추가해주고 (이름 자유 / Oracle에서는 굳이 추가해주지 않아도 됨. 지금 이 공간에서 받아줄 '공간'을 마련한 개념이니)
2) "name"가지고 와서 / book에다가 set해줘서 list에 추가해주면 list 가지고 활용 가능해지는 것
sql 쿼리식을 가지고 놀아보잣
728x90
반응형